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

 更新时间:2014年12月22日 15:27:55   投稿:shichen2014  
这篇文章主要介绍了php天翼开放平台短信发送接口实现方法,是针对短信接口的经典应用,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了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']}&timestamp=".$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&timestamp={$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 unset对json_encode的影响详解

    关于php unset对json_encode的影响详解

    这篇文章主要给大家介绍了关于php unset对json_encode的影响的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11
  • 使用Curl进行抓取远程内容时url中文编码问题示例探讨

    使用Curl进行抓取远程内容时url中文编码问题示例探讨

    在编码时应该只对部分URL编码,否则URL中的冒号和反斜杠也会被转义,下面有两个不错的示例,有类似情况的朋友可以感受下
    2013-10-10
  • php结合正则获取字符串中数字

    php结合正则获取字符串中数字

    这篇文章主要给大家汇总介绍了php结合正则获取字符串中数字的几种方法,十分的简单实用,有需要的小伙伴可以参考下。
    2015-06-06
  • php获取英文姓名首字母的方法

    php获取英文姓名首字母的方法

    这篇文章主要介绍了php获取英文姓名首字母的方法,涉及php中explode及strtoupper函数操作php字符串分割及大小写转换的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • PHP入门教程之表单与验证实例详解

    PHP入门教程之表单与验证实例详解

    这篇文章主要介绍了PHP入门教程之表单与验证技巧,结合实例形式分析了php表单提交与数据验证的基本技巧与相关注意事项,需要的朋友可以参考下
    2016-09-09
  • PHP中使用localhost连接Mysql不成功的解决方法

    PHP中使用localhost连接Mysql不成功的解决方法

    这篇文章主要介绍了PHP中使用localhost连接Mysql不成功的解决方法,但使用127.0.0.1则没有问题,本文也可以说是对连接MySQL主机使用127.0.0.1与localhost的区别的讲解,需要的朋友可以参考下
    2014-08-08
  • php+jQuery+Ajax实现点赞效果的方法(附源码下载)

    php+jQuery+Ajax实现点赞效果的方法(附源码下载)

    这篇文章主要介绍了php+jQuery+Ajax实现点赞效果的方法,结合实例形式详细介绍了php结合jQuery的ajax无刷新提交实现点赞功能的具体步骤与相关技巧,需要的朋友可以参考下
    2015-12-12
  • PHP字符编码问题之GB2312 VS UTF-8解决方法

    PHP字符编码问题之GB2312 VS UTF-8解决方法

    今天照着书随便写了段代码,代码意图是将字符串使用str_split()函数进行分割成数组,英文好说,但分割中文(两个中文一个数组单元)时就出问题了
    2011-06-06
  • PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)

    PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)

    这篇文章主要介绍了PHP入门教程之正则表达式基本用法,结合实例形式分析了正则表达式的结构、原理及正则匹配、搜索、分割、元子符、修饰符等相关概念与操作技巧,需要的朋友可以参考下
    2016-09-09
  • php常用的url处理函数总结

    php常用的url处理函数总结

    这篇文章主要介绍了php常用的url处理函数,实例总结了parse_url、rawurldecode、urlencode、urldecode等一些较为常用的URL处理函数,非常具有实用价值,需要的朋友可以参考下
    2014-11-11

最新评论