在实际过程中我们会有这样的场景,就是发送短信的时候,里面需要嵌入我们的网址,可是网址都是很长的。

但是短信内容,最多只能七十个字左右,多余就会出现发送两条的情况,然而这并不是我们想要的。

所以,基于这种需求我们急需将长链接转为短链接。常用的可以看到新浪微博的分享地址。下面来看,如何实现?

新浪提供了长链接转为短链接的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 (返回结果是XML格式)

请求参数:

source 申请应用时分配的AppKey,调用接口时代表应用的唯一身份。

url_long 需要转换的长链接,需要URLencoded,最多不超过20个。

多个url参数需要使用如下方式请求:url_long=aaa&url_long=bbb

创建source方法

1.进入http://open.weibo.com/ ,选择菜单 微连接->网站接入。

2.点击立即接入,创建新应用,随便填写应用名称,点击创建。

3.创建成功后,AppKey就是source参数的值,可以用于请求创建短链接。/**

* 调用新浪接口将长链接转为短链接

* @param  string        $source    申请应用的AppKey

* @param  array|string  $url_long  长链接,支持多个转换(需要先执行urlencode)

* @return array

*/

function getSinaShortUrl($source, $url_long){

// 参数检查

if(empty($source) || !$url_long){

return false;

}

// 参数处理,字符串转为数组

if(!is_array($url_long)){

$url_long = array($url_long);

}

// 拼接url_long参数请求格式

$url_param = array_map(function($value){

return '&url_long='.urlencode($value);

}, $url_long);

$url_param = implode('', $url_param);

// 新浪生成短链接接口

$api = 'http://api.t.sina.com.cn/short_url/shorten.json';

// 请求url

$request_url = sprintf($api.'?source=%s%s', $source, $url_param);

$result = array();

// 执行请求

$ch = curl_init();

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_URL, $request_url);

$data = curl_exec($ch);

if($error=curl_errno($ch)){

return false;

}

curl_close($ch);

$result = json_decode($data, true);

return $result;

}

// AppKey 以下是公用API,暂时可用。如失效,注册新浪开发者帐号即可

$source = 1681459862;

// 单个链接转换

$url_long = 'http://www.shuchengxian.com/';

$data = getSinaShortUrl($source, $url_long);

print_r($data);

// 多个链接转换

$url_long = array(

'http://www.shuchengxian.com/article/670.html',

'http://www.shuchengxian.com/article/654.html',

'http://www.shuchengxian.com/index.html'

);

$data = getSinaShortUrl($source, $url_long);

print_r($data);

Array

(

[0] => Array

(

[url_short] => http://t.cn/R0Yf2ww

[url_long] => http://www.shuchengxian.com/

[type] => 0

)

)

Array

(

[0] => Array

(

[url_short] => http://t.cn/R0Yf2Ax

[url_long] => http://www.shuchengxian.com/article/670.html

[type] => 0

)

[1] => Array

(

[url_short] => http://t.cn/R0Yf2AJ

[url_long] => http://www.shuchengxian.com/article/654.html

[type] => 0

)

[2] => Array

(

[url_short] => http://t.cn/R0Yf2AM

[url_long] => http://www.shuchengxian.com/index.html

[type] => 0

)

)

通过上面的方法,可以很轻松的实现用php生成短链接网址的功能。

音乐外链生成php,如何使用php生成短链接网址 第三方API相关推荐

  1. JS不跨域操控网易云音乐外链播放器

    JS不跨域操控网易云音乐外链播放器 今天写个人网站,用到了背景音乐. 一开始想使用H5的audio标签,蛮成功的,但是传到服务器上后加载缓慢(腾讯云服务器学生优惠版,最低的配置),体验很差. 使用外链 ...

  2. [前端] 网易云音乐外链播放器不能正常显示的问题之解决方案

    场景:要在页面中插入这样的一个小插件: 参考网易云音乐提供的<iframe>外链播放器代码,却无法正常显示. 方法极其简单:只要在<iframe>标签的src属性中的//前加上 ...

  3. 【折腾的一个小玩意】基于jquery+百度音乐的音乐外链小工具

    [折腾的一个小玩意]基于jquery+百度音乐的音乐外链小工具 现在百度mp3好像关掉了,虾米的加载又慢,于是我就根据以前发过的百度音乐的代码弄了这个东西.代码托管到百度BAE的,应用还在审核中,不知 ...

  4. 关于使用群晖系统创建音乐外链的研究

    一.打开群晖系统的文件管理(file station) 图1 二.找到你的音乐文件 图2 三.如图3所示,右击音乐文件并在下拉菜单中选择"在新选项卡中打开" 图3 四.复制打开的选 ...

  5. 网易云音乐 音乐外链

    获取网易云音乐外链 浏览器播放音乐 1,复制网易云音乐ID 2,音乐外链解析网站 1,复制网易云音乐ID 2,音乐外链解析网站 外链转换工具 参考: 音乐直链搜索 HHTJim's部落格 Web Ap ...

  6. 仿网易云音乐html代码,仿网易云音乐外链播放器UI的HTML5音乐播放器插件

    简要教程 APlayer是一款仿网易云音乐外链播放器UI的HTML5音乐播放器插件.APlayer音乐播放器可以自定义歌曲封面,可以自定义同步歌词等,界面时尚大方,是一款非常好的HTML5音乐播放器插 ...

  7. html5自动播放音乐外链,仿网易云音乐外链播放器UI的HTML5音乐播放器插件

    APlayer是一款仿网易云音乐外链播放器UI的HTML5音乐播放器插件.APlayer音乐播放器可以自定义歌曲封面,可以自定义同步歌词等,界面时尚大方,是一款非常好的HTML5音乐播放器插件. 安装 ...

  8. 网易云音乐外链的真实地址下载方法

    一个网易音乐外链地址长期有效,很简单的方法: 第一步打开网易云音乐,随便找到一首歌,播放,复制网址的ID, 例如:杨钰莹的心雨,网址是: http://music.163.com/#/song?id= ...

  9. 音乐外链生成源码php,百度网盘音乐外链源码 | 小楼昨夜又东风

    百度网盘音乐外链方法,以前一直用破博客的,后来用的人多了,导致虚拟主机CUP占用过大,暂时撤掉外链了.不过作者提供了源码,原文链接:http://www.poboke.com/study/the-so ...

最新文章

  1. AI 监视打工人,这个国家明确说:保护我方“摸鱼权”!
  2. 使用 Weinre 调试移动网站及 PhoneGap 应用
  3. LeetCode:85. 最大矩形
  4. Docker 的日志相关整理
  5. STM32那点事(1)_STM32F40_41xx启动文件详解
  6. Oracle根底数据标准存储名目浅析(三)——日期标准(三)
  7. LINUX使用wireshark
  8. 【独立小程序商城】THINKPHP带后台管理+MYSQL数据库微信小程序商城系统源码
  9. python爬取豆瓣电影名称与评分进行分析
  10. 基于SSM的毕业生就业管理系统设计与实现 Java mysql
  11. python对接蚂蚁验证码平台
  12. PTA-寻找孪生素数
  13. 是什么让物联网放慢脚步?
  14. useCallback包裹函数,但是使用到的外部变量一直是最开始的值
  15. 2021年企业十大科技趋势预测
  16. GPRS模块(sim900a)联网(PC)测试失败篇
  17. 【Soul源码阅读】3.HTTP 用户接入 Soul 流程解析
  18. 成功之路散文连载之伪君子岳不群
  19. python 怎么import自己写的py模块
  20. 教你如何用Python检测出图像中的黄色?都在这里!

热门文章

  1. python第二十四天
  2. k8s污点容忍度概念介绍
  3. [ACM]辽宁省赛2010 (HZNU 1081-1089)
  4. 名字作诗,让你的名片更具有趣味性和个性化
  5. 2019NEFU寒假集训新生考试 2020.1.6
  6. 会员自动续费服务协议
  7. 打车代驾顺风车货车租运系统开发功能(司机端)
  8. 店铺微信公众号怎么创建?
  9. 管理角度看莫泊桑《项链》
  10. noip赛后【微笑】