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

 更新时间:2014年11月08日 12:05:21   投稿:shichen2014  
这篇文章主要介绍了php调用新浪短链接API的方法,以实例的形式详细讲述了php调用新浪短链接API的具体步骤与代码功能,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了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程序设计有所帮助。

相关文章

  • Laravel 5.4重新登录实现跳转到登录前页面的原理和方法

    Laravel 5.4重新登录实现跳转到登录前页面的原理和方法

    在日常开发中,我们经常遇到一个需求,就是用户登陆后存在过期时间,超时用户需重新登录,下面这篇文章主要给大家介绍了关于Laravel 5.4重新登录实现跳转到登录前页面的原理和方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • PHP实现批量修改文件名的方法示例

    PHP实现批量修改文件名的方法示例

    这篇文章主要介绍了PHP实现批量修改文件名的方法,结合实例形式分析了php基于文件遍历、字符串操作实现文件名批量修改相关操作技巧,需要的朋友可以参考下
    2019-09-09
  • PHP打开和关闭文件操作函数总结

    PHP打开和关闭文件操作函数总结

    这篇文章主要介绍了PHP打开和关闭文件操作函数总结,本文讲解的就是fopen()和fclose()函数,其中着重讲解了fopen()函数,需要的朋友可以参考下
    2014-11-11
  • php面向对象 字段的声明与使用

    php面向对象 字段的声明与使用

    类就像是一个模板,它定义了么个概念或真实事物的性质和行为。类提供了一个基础,可以在这个基础上创建实体(即这个类所建模的实体)的特定实例,这些特定实例称为对象
    2012-06-06
  • 讲解WordPress开发中一些常用的debug技巧

    讲解WordPress开发中一些常用的debug技巧

    这篇文章主要介绍了WordPress开发中一些常用的debug技巧,需要的朋友可以参考下
    2015-12-12
  • PHP生成树的方法

    PHP生成树的方法

    这篇文章主要介绍了PHP生成树的方法,实例分析了php树与节点操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • 使用HMAC-SHA1签名方法详解

    使用HMAC-SHA1签名方法详解

    本篇文章是对使用HMAC-SHA1的签名方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php自动加载机制的深入分析

    php自动加载机制的深入分析

    本篇文章是对php自动加载机制进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 解析PHP高效率写法(详解原因)

    解析PHP高效率写法(详解原因)

    本篇文章是对PHP高效率写法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php修改文件上传限制方法汇总

    php修改文件上传限制方法汇总

    这篇文章主要介绍了php修改文件上传限制方法汇总,十分的细致全面,基本上算是最全面的方法汇总了,希望大家能够喜欢。
    2015-04-04

最新评论