首頁  >  文章  >  後端開發  >  新浪短連結產生及還原短連結教程

新浪短連結產生及還原短連結教程

小云云
小云云原創
2017-11-22 10:27:576846瀏覽

短鏈接,通俗來說,就是將長的URL網址,透過程式計算等方式,轉換為簡短的網址字串。關於新浪短連結我們可以使用新浪微博短連結產生器,它是一個可以產生t.cn短連結的小工具。但是要是我們自己實現新浪短連結的話怎麼做呢?這篇文章我們將教大家如何用php產生新浪的短連結以及還原新浪短連結類別。

<?php
/*
* 生成新浪的短链接或还原新浪短链接
* date 2017年11月22日
* author www.phpernote.com
*/
class SinaUrl{
//新浪APPKEY
const APPKEY=&#39;31641035&#39;;
//CURL
private 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]:&#39;&#39;;
}
//获取短链接
public static function getShort($url){
$url=&#39;http://api.t.sina.com.cn/short_url/shorten.json?source=&#39;.self::APPKEY.&#39;&url_long=&#39;.$url;
$result=self::CURLQueryString($url);
return self::doWithResult($result,&#39;url_short&#39;);
}
//获取长链接
public static function getLong($url){
$url=&#39;http://api.t.sina.com.cn/short_url/expand.json?source=&#39;.self::APPKEY.&#39;&url_short=&#39;.$url;
$result=self::CURLQueryString($url);
return self::doWithResult($result,&#39;url_long&#39;);
}
}

//使用示例,如下:

$result=SinaUrl::getShort(&#39;http://www.phpernote.com/&#39;);
echo $result;
//http://t.cn/zYzBqAU
$result=SinaUrl::getLong(&#39;http://t.cn/zYzBqAU&#39;);
echo $result;
//http://www.phpernote.com/

以上就是產生新浪的短連結和還原新浪短連結類別(方法)總結,希望能幫助大家。

相關推薦:

PHP實作URL長連接產生短連結操作

連結php 短連結演算法收集與分析

微博短連結演算法PHP版本_PHP教學

以上是新浪短連結產生及還原短連結教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn