短連結,通俗來說,就是將長的URL網址,通過程式計算等方式,轉換為簡短的網址字串。關於新浪短連結我們可以使用新浪微博短連結產生器,它是一個可以產生t.cn短連結的小工具。但是要是我們自己實現新浪短連結的話怎麼去做呢?本篇文章我們將教大家如何用php產生新浪的短連結以及還原新浪短連結類。
<?php/** 產生新浪的短連結或還原新浪短連結* date 2017年11月22日* author www.phpernote.com*/class SinaUrl{//新浪APPKEYconst APPKEY='31641035';//CURLprivate static function CURLQueryString($url){//設定附加HTTP頭$addHead=array("Content-type: application/json");//初始化curl,當然,你也可以用fsockopen代替$curl_obj=curl_init();//設定網址curl_setopt($curl_obj,CURLOPT_URL,$url);//附加Head內容curl_setopt($curl_obj,CURLOPT_HTTPHEADER,$addHead);//是否輸出返回頭資訊curl_setopt($curl_obj,CURLOPT_HEADER,0);//將curl_exec的結果返回curl_setopt($curl_obj,CURLOPT_RETURNTRANSFER,1);//設定逾時時間curl_setopt($curl_obj,CURLOPT_TIMEOUT,8);//執行$result=curl_exec($curl_obj);//關閉curl回話curl_close($curl_obj);return $result;}//處理返回結果private static function doWithResult($result,$field){$result=json_decode($result,true);return isset($result[0][$field])?$result[0][$field]:'';}//擷取短連結public static function getShort($url){$url='http://api.t.sina.com.cn/short_url/shorten.json?source='.self::APPKEY.'&url_long='.$url;$result=self::CURLQueryString($url);return self::doWithResult($result,'url_short');}//擷取長連結public static function getLong($url){$url='http://api.t.sina.com.cn/short_url/expand.json?source='.self::APPKEY.'&url_short='.$url;$result=self::CURLQueryString($url);return self::doWithResult($result,'url_long');}}//使用樣本,如下:$result=SinaUrl::getShort('http://www.phpernote.com/');echo $result;//http://t.cn/zYzBqAU$result=SinaUrl::getLong('http://t.cn/zYzBqAU');echo $result;//http://www.phpernote.com/
以上就是產生新浪的短連結和還原新浪短連結類(方法)總結,希望能協助到大家。