短链接,通俗来说,就是将长的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/
相关推荐:
PHP实现URL长连接生成短链接操作
链接 php 短链接算法收集与分析
微博短链接算法PHP版本_PHP教程
免责声明:本站内容仅用于学习参考,信息和图片素材来源于互联网,如内容侵权与违规,请联系我们进行删除,我们将在三个工作日内处理。联系邮箱:chuangshanghai#qq.com(把#换成@)