1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
| <?php define('SINA_APPKEY', '1335371408'); function curlQuery($url) { $addHead = array( "Content-type: application/json" ); $curl_obj = curl_init(); curl_setopt($curl_obj, CURLOPT_URL, $url); curl_setopt($curl_obj, CURLOPT_HTTPHEADER, $addHead); curl_setopt($curl_obj, CURLOPT_HEADER, 0); curl_setopt($curl_obj, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl_obj, CURLOPT_TIMEOUT, 15); $result = curl_exec($curl_obj); curl_close($curl_obj); return $result; } function filterUrl($url = '') { $url = trim(strtolower($url)); $url = trim(preg_replace('/^http:\/\//', '', $url)); if ($url == '') return false; else return urlencode('http://' . $url); } function sinaShortenUrl($long_url) { $url = 'http://api.t.sina.com.cn/short_url/shorten.json?source=' . SINA_APPKEY . '&url_long=' . $long_url; $result = curlQuery($url); $json = json_decode($result); if (isset($json->error) || !isset($json[0]->url_short) || $json[0]->url_short == '') return false; else return $json[0]->url_short; } function sinaExpandUrl($short_url) { $url = 'http://api.t.sina.com.cn/short_url/expand.json?source=' . SINA_APPKEY . '&url_short=' . $short_url; $result = curlQuery($url); $json = json_decode($result); if (isset($json->error) || !isset($json[0]->url_long) || $json[0]->url_long == '') return false; else return $json[0]->url_long; } $url = $_GET['url']; $url = filterUrl($url); $short = sinaShortenUrl($url); $ulong = sinaExpandUrl($short); echo "源网址:{$ulong}<br />短网址:{$short}"; ?>
|