这篇文章主要介绍了服务器端编程语言(专业超文本预处理器的缩写)通过调用新浪应用程序接口生成t.cn格式短网址链接的方法,结合实例形式较为详细的分析了服务器端编程语言(专业超文本预处理器的缩写)调用新浪应用程序接口生成t.cn格式短网址链接的具体操作步骤与相关注意事项,需要的朋友可以参考下
本文实例讲述了服务器端编程语言(专业超文本预处理器的缩写)通过调用新浪应用程序接口生成t.cn格式短网址链接的方法。分享给大家供大家参考,具体如下:
新浪提供了长链接转为短链接的API,可以把长链接转为t.cn/xxx这种格式的短链接。
API:
http://API . t . Sina . com . cn/short _ URL/shorten . JSON(返回结果是JSON格式)
http://API . t . Sina . com . cn/short _ URL/shorten . XML(返回结果是可扩展标记语言格式)
请求参数:
来源申请应用时分配的AppKey,调用接口时代表应用的唯一身份。
url_long需要转换的长链接,需要URLencoded,最多不超过20个。
多个全球资源定位器(统一资源定位器)参数需要使用如下方式请求:url_long=aaaurl_long=bbb
创建source方法
1.进入http://open.weibo.com/,选择菜单微连接-网站接入。
2.点击立即接入,创建新应用,随便填写应用名称,点击创建。
3.创建成功后,AppKey就是来源参数的值,可以用于请求创建短链接。
测试代码:
?服务器端编程语言(专业超文本预处理器的缩写)
$ API=' http://API。新浪网。com。cn/short _ URL/shorten。JSON ';//json
//$ API=' http://API。新浪网。com。cn/short _ URL/shorten。XML ';//xml
$source='您申请的AppKey ';
$ URL _ long='https://www.jb51.net/';
$request_url=sprintf($api .source=%surl_long=%s ',$source,$ URL _ long);
$ data=file _ get _ contents($ request _ URL);
echo $ data
?
返回JSON格式
[
{
' URL _ short ':' http:\/\/t . cn \/rki 0 twp ',
' URL _ long ':' http:\/\/www .cn博客。' com \/daxiang XM ',
"类型":0
}
]
返回可扩展标记语言格式
?可扩展标记语言版本='1.0 '编码='UTF八号'?资源定位符
全球资源定位器(统一资源定位器)
URL _ short http://t。cn/RBclsRo/URL _ short
URL _ long https://www。jb51。net//URL _ long
类型0/类型
/URL/URL
生成的短链接为http://t.cn/RBclsRo,访问会跳转到https://www.jb51.net/
完整调用方法如下:
?php/**
* 调用新浪接口将长链接转为短链接
* @param string $source申请应用的AppKey
* @param array|string $url_long长链接,支持多个转换(需要先执行urlencode)
* @返回数组
*/function getSinaShortUrl($ source,$url_long){
//参数检查
if(empty($source) ||!$url_long){br返回错误的
} //参数处理,字符串转为数组
如果(!is _ array($ URL _ long)){ br $ URL _ long=array($ URL _ long);
} //拼接url_long参数请求格式
$ URL _ param=array _ map(function($ value){
返回" url_long=" .urlencode($ value);
},$ URL _ long);br $url_param=内爆(',$ URL _ param);
//新浪生成短链接接口
$ API=' http://API。新浪网。com。cn/short _ URL/shorten。JSON ';//请求全球资源定位器(统一资源定位器)
$request_url=sprintf($api .source=%s%s ',$source,$ URL _ param);br $ result=array();//执行请求
$ ch=curl _ init();
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_URL,$ request _ URL);br $ data=curl _ exec($ ch);br if($ error=curl _ errno($ ch)){ br返回错误的
}
curl _ close($ ch);$result=json_decode($data,true);返回$结果
}
//AppKey brsource='您申请的AppKey ';br//单个链接转换
$ URL _ long='https://www.jb51.net/';br $ data=getSinaShortUrl($ source,$ URL _ long);
print _ r($ data);br//多个链接转换
$ URL _ long=array(' https://www.jb51.net/',' https://www .jb51。net/',' https://www。jb51。net/');
$data=getSinaShortUrl($source,$ URL _ long);
print _ r($ data);
?
输出:
数组(
[0]=数组
(
[网址_短]=http://t.cn/RBclsRo
[网址_长]=https://www.jb51.net/
[类型]=0
)
)数组(
[0]=数组
(
[网址_短]=http://t.cn/RBclsRo
[网址_长]=https://www.jb51.net/
[类型]=0
)
[1]=数组
(
[网址_短]=http://t.cn/RBclsRo
[网址_长]=https://www.jb51.net/
[类型]=0
)
[2]=数组
(
[网址_短]=http://t.cn/RBclsRo
[网址_长]=https://www.jb51.net/
[类型]=0
)
)
经测试,这个生成接口还是比较稳定的!
PS:这里为大家推荐一款本站短网址生成工具(也是使用的第三方API接口生成的短网址)
短链(短网址)在线生成工具:
http://tools.jb51.net/password/dwzcreate
更多对PHP相关内容感兴趣的读者,请参考我们的专题:《php curl用法总结》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》和《PHP数据结构与算法教程》。
希望这篇文章对大家的PHP编程有所帮助。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。