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

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

本文实例讲述了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
蜜芽
故事不长,也不难讲,四字概括,毫无意义。

相关推荐

JDK1.8下载、安装和环境变量配置教程(图文)
Java作为一门广泛使用的编程语言,在软件开发领域中占据着重要地位。Java Development Kit (JDK) 是开发Java应用程序的必备工具,而正确安装和配置JDK 1.8的环境对于开发者来...
2024-07-17 编程技术
113

Git本地服务器搭建及使用方法详解
Git作为最流行的分布式版本控制系统之一,不仅在代码管理上提供了强大的功能,还支持通过本地服务器进行团队协作。搭建和使用Git本地服务器不仅可以提高工作效率,还能保障数...
2024-07-16 编程技术
108

MySQL安装教程:Windows系统中MySQL数据库下载及安装图文教程
MySQL作为一款开源、稳定且高性能的数据库软件,受到了广大开发者的青睐。对于初学者和专业开发者而言,在Windows系统中安装MySQL数据库是一个基础且必要的步骤。本文将为您提...
2024-07-14 编程技术
108

MySQL安装教程:Linux系统中安装MySQL的详细步骤
MySQL作为一款开源、稳定且高性能的关系型数据库管理系统,受到了广大开发者的青睐。特别是在Linux操作系统中,MySQL的应用尤为广泛。本文将详细介绍在Linux系统中安装MySQL的...
2024-07-14 编程技术
109

教你使用Java实现扫雷小游戏(最新完整版)
本文给大家介绍使用Java实现扫雷小游戏,本程序封装了五个类,分别是主类GameWin类,绘制底层地图和绘制顶层地图的类MapBottom类和MapTop类,绘制底层数字的类BottomNum类,以...
2024-07-12 编程技术
96

JAVA语言实现经典扫雷游戏示例代码分享
扫雷游戏是一个经典的益智游戏,通过在布满雷区的网格中寻找安全路径,挑战玩家的记忆力和逻辑推理能力。今天,我们将探讨如何使用Java语言实现一个扫雷游戏。通过这个示例代...
2024-07-12 编程技术
99