php天翼开放平台短信发送接口实现方法


Posted in PHP onDecember 22, 2014

本文实例讲述了php天翼开放平台短信发送接口实现方法。分享给大家供大家参考。具体分析如下:

临时性需求,研究了一下天翼开发平台的东西,用来发送验证码还是不错的,但是每日限额不多,所以很鸡肋,但是保证100%到达 买的话还是蛮贵的,代码没有做任何优化处理,只是测试是否可以实现接口,用的同学记得完善代码,刚写完老大又说是鸡肋的东西,不用了,代码放在博客记录下,代码如下:

<?php 

// 

date_default_timezone_set('PRC'); 

//获取access_token 

$data = "app_id=x&app_secret=x&grant_type=client_credentials"; 

$ch = curl_init("https://oauth.api.189.cn/emp/oauth2/v2/access_token"); 

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 

curl_setopt($ch,CURLOPT_POST,1);//使用post提交数据 

curl_setopt($ch,CURLOPT_POSTFIELDS,$data);//设置 post提交的数据 

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

// 从证书中检查SSL加密算法是否存在 

 

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 

$access_token = curl_exec($ch); 

curl_close($ch); 

$access_token = json_decode($access_token,true); 

//获取短信信任码  

$timestamp = date('Y-m-d H:i:s'); 

 

$param['app_id'] = "app_id=x"; 

$param['access_token'] = "access_token=".$access_token['access_token']; 

$param['timestamp'] = "timestamp=".$timestamp; 

ksort($param); 

$plaintext = implode("&",$param); 

$sign = rawurlencode(base64_encode(hash_hmac('sha1',$plaintext,app_secret,true))); 

//echo $sign;exit; 

$code = file_get_contents("http://api.189.cn/v2/dm/randcode/token?app_id=x&access_token={$access_token['access_token']}×tamp=".$timestamp."&sign=".$sign); 

$code = json_decode($code,true); 

$code = $code['token']; 

echo $code; 

//下发验证码 

unset($param,$plaintext,$sign); 

$param['app_id'] = "app_id=x"; 

$param['access_token'] = "access_token=".$access_token['access_token']; 

$param['token'] = "token=".$code; 

$param['phone'] = "phone=15091421612"; 

$param['url'] = "url=http://wx.podapi.com/test.php"; 

$param['exp_time'] = "exp_time=2"; 

$param['timestamp'] = "timestamp=".$timestamp; 

ksort($param); 

$plaintext = implode("&",$param); 

$sign = rawurlencode(base64_encode(hash_hmac('sha1',$plaintext,'xx',true))); 

 

$data = "app_id=x&access_token={$access_token['access_token']}&token={$code}&phone=15091421612&url=http://wx.podapi.com/test.php&exp_time=2×tamp={$timestamp}&sign=".$sign; 

$ch = curl_init("http://api.189.cn/v2/dm/randcode/send"); 

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 

curl_setopt($ch,CURLOPT_POST,1);//使用post提交数据 

curl_setopt($ch,CURLOPT_POSTFIELDS,$data);//设置 post提交的数据 

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

// 从证书中检查SSL  加密算法是否存在 

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 

$state = curl_exec($ch); 

//var_dump(curl_getinfo($ch)); 

curl_close($ch); 

//echo $state; 

?>

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

PHP 相关文章推荐
php公用函数列表[正则]
Feb 22 PHP
php面向对象全攻略 (一) 面向对象基础知识
Sep 30 PHP
提高PHP编程效率的53个要点(经验小结)
Sep 04 PHP
php简单开启gzip压缩方法(zlib.output_compression)
Apr 13 PHP
php多文件上传实现代码
Feb 20 PHP
zf框架db类的分页示例分享
Mar 14 PHP
10个简化PHP开发的工具
Dec 25 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
Jan 07 PHP
PHP模板引擎Smarty自定义变量调解器用法
Apr 11 PHP
php简单实现批量上传图片的方法
May 09 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
May 20 PHP
PHP读取、解析eml文件及生成网页的方法示例
Sep 04 PHP
php进行支付宝开发中return_url和notify_url的区别分析
Dec 22 #PHP
WebQQ最新登陆协议的用法
Dec 22 #PHP
腾讯微博提示missing parameter errorcode 102 错误的解决方法
Dec 22 #PHP
php有道翻译api调用方法实例
Dec 22 #PHP
php匹配字符中链接地址的方法
Dec 22 #PHP
php用户注册时常用的检验函数实例总结
Dec 22 #PHP
CentOS6.5 编译安装lnmp环境
Dec 21 #PHP
You might like
php使用Smarty的相关注意事项及访问变量的几种方式
2011/12/08 PHP
PHP加Nginx实现动态裁剪图片方案
2014/03/10 PHP
PHP获取访问页面HTTP状态码的实现代码
2016/11/03 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
2017/02/16 PHP
js 字符串操作函数
2009/07/25 Javascript
动感效果的TAB选项卡jquery 插件
2011/07/09 Javascript
利用JS来控制键盘的上下左右键(示例代码)
2013/12/14 Javascript
js修改原型的属性使用介绍
2014/01/26 Javascript
javascript控制层显示或隐藏的方法
2015/07/22 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记6)
2015/12/20 Javascript
jquery Deferred 快速解决异步回调的问题
2016/04/05 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
移动端刮刮乐的实现方式(js+HTML5)
2017/03/23 Javascript
详解vue前后台数据交互vue-resource文档
2017/07/19 Javascript
JS解决IOS中拍照图片预览旋转90度BUG的问题
2017/09/13 Javascript
Vue + Vue-router 同名路由切换数据不更新的方法
2017/11/20 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
以Flask为例讲解Python的框架的使用方法
2015/04/29 Python
python实现自动网页截图并裁剪图片
2018/07/30 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
python tkinter实现界面切换的示例代码
2019/06/14 Python
利用python绘制数据曲线图的实现
2020/04/09 Python
keras得到每层的系数方式
2020/06/15 Python
澳大利亚在线时尚精品店:Hello Molly
2018/02/26 全球购物
读群众路线心得体会
2014/03/07 职场文书
小学清明节活动方案
2014/03/08 职场文书
2014年师德承诺书
2014/05/23 职场文书
民族团结演讲稿范文
2014/08/27 职场文书
副总经理岗位职责
2015/02/02 职场文书
土建技术员岗位职责
2015/04/11 职场文书
公司财务人员岗位职责
2015/04/14 职场文书
生产现场禁烟通知
2015/04/23 职场文书
三十年再续同学情倡议书
2019/11/27 职场文书
基于docker安装zabbix的详细教程
2022/06/05 Servers
win10此电脑打不开怎么办 win10双击此电脑无响应的解决办法
2022/07/23 数码科技