php调用新浪短链接API的方法

网络 2024-04-06 10:38:48编程技术
27

本文实例讲述了php调用新浪短链接API的方法。分享给大家供大家参考。具体方法如下:

<?php

//Sina App_Key

define('SINA_APPKEY', '31641035');

function curlQuery($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, 15);

 //执行

 $result = curl_exec($curl_obj);

 //关闭curl回话

 curl_close($curl_obj);

 return $result;

}

//简单处理下url,sina对于没有协议(http://)开头的和不规范的地址会返回错误

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);

 //下面这行注释用于调试,你可以把注释去掉看看从sina返回的信息是什么东西

 //print_r($result);exit();

 //解析json

 $json = json_decode($result);

 //异常情况返回false

 if (isset($json->error) || !isset($json[0]->url_short) || $json[0]->url_short == '')

 return false;

 else

 return $json[0]->url_short;

}

//根据短网址获取长网址,此函数重用了不少sinaShortenUrl中的代码,以方便你阅读对比,你可以自行合并两个函数

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);

 //下面这行注释用于调试,你可以把注释去掉看看从sina返回的信息是什么东西

 //print_r($result);exit();

 //解析json

 $json = json_decode($result);

 //异常情况返回false

 if (isset($json->error) || !isset($json[0]->url_long) || $json[0]->url_long == '')

 return false;

 else

 return $json[0]->url_long;

}

//要缩短的网址

$url = $long; //这里自己看着办,修改成你要缩短的网址还是获取post的数据还是怎么滴。

$url = filterUrl($url);

$short = sinaShortenUrl($url);

$ulong = sinaExpandUrl($short);

?>

本文中短连接已经附带的一个appkey不用再自己申请KEY当然你如果需要使用你自己的您也可以自己去替换。至于用法就看你了,镶入到其他程序使用,单独做个生成短连接的页面都可以。使用方法就不多说了。

希望本文所述对大家的PHP程序设计有所帮助。

php 短链接
THE END
蜜芽
故事不长,也不难讲,四字概括,毫无意义。

相关推荐

使用HTML+JS实现国庆节倒计时网页实例代码
马上就是每年10月1日的国庆节了,为了增加节日氛围,许多网站会设置倒计时,以提醒人们国庆节的临近。本文站长工具网将介绍如何使用HTML和JavaScript创建一个简单的国庆节倒计...
2024-09-19 编程技术
111

WebStorm同时打开多个项目的3种方法总结
WebStorm作为一款广受欢迎的JavaScript IDE,为开发者提供了强大的代码编辑、调试和管理功能。在日常开发中,我们常常需要同时处理多个项目,这可能是由于工作流程的需求,或...
2024-09-18 编程技术
108

AI代码生成器(Cursor)安装和使用详细教程
随着人工智能技术的不断发展,越来越多的工具被应用于软件开发领域。其中,AI代码生成器(Cursor)因其能够自动生成代码、提高开发效率而受到广泛关注。本文将详细介绍Cursor的...
2024-09-14 编程技术
115

使用HTML+JS实现中秋猜灯谜小游戏实例详解
中秋节是中国的传统节日之一,猜灯谜是中秋节的一项传统活动。在这个活动中,人们会聚集在一起,猜各种有趣的灯谜,增进彼此的感情。本文将详细介绍如何使用HTML和JavaScript...
2024-09-14 编程技术
136

使用JS实现网站图片懒加载的方法及示例代码
为了提高用户体验和减少服务器负载,图片懒加载技术应运而生。图片懒加载是一种延迟加载图片的技术,只有当图片进入用户的可视区域时才会真正加载图片,从而减少了初始页面加...
2024-09-14 编程技术
114

Visual Studio 2022中无缝集成并使用GIT进行版本控制的图文教程
Visual Studio 2022作为微软推出的强大集成开发环境(IDE),为开发者提供了与Git无缝集成的功能,极大地简化了代码管理流程。本教程旨在通过详细的图文步骤,指导初学者和有经...
2024-09-13 编程技术
108