短信服务:将阿里大鱼整合到ThinkPHP3.2,并使用
2016-05-15 00:00
507 查看
摘要: 1. 入驻阿里大鱼、下载阿里大鱼短信服务的SDK;
2. 整合阿里大鱼SDK到ThinkPHP3.2框架
1.入驻阿里大鱼:
以下是阿里大鱼官网链接: http://www.alidayu.com/?channel=baidu&spm=a1z15.973.4467.17133&ad_id=1001319817aad41eae59&campaign_id=547194&b=1012&jlogid=a15145827db3dc
1.1 进入官网,先登录
1.2 入驻阿里大鱼
接下来是配置短信模板,和创建应用,要先创建应用才可以下载SDK。
创建应用:
1.3下载SDK:
创建应用成功后,点红色框
另外还有另一种下载SDK的方法:
1)进入管理中心
再进入 开发者控制台:
在开发者控制台可以看到刚刚创建的应用:
选择版本并下载:
2.根据需求选择需要的文件:
2.1 api文档可以看到:https://api.alidayu.com/doc2/apiDetail?spm=a3142.7791109.1.19.xfkKpE&apiId=25450
短信服务主要用到的是一下几个类文件:
根据官方api的示例代码,可以知道是这几个类文件:
其他三个分别是在一个两个类文件中调用。
所以,解压完SDK后,保留这几个文件,其他就可以删除,当然你保留也不会怎么的。
3. 将选好的文件作为第三方类库引入ThinkPHP3.2框架
引入第三方类库的方法,再次不做累述,在我的另外的一片博文有详细说明。
以下是我自己的部署,以及代码的写法:
3.1 将选好文件放在Library下的AliMsg文件夹(这个文件是自己建的),新建一个文件AliMsgSend.class.php来访问短信服务接口。
3.2 用构造函数初始化,短信需要用来的参数:
3.3 在sendMsg函数中引入需要用到的函数,下面的Log文件是我自己写的,用来打log的(以下的几幅暗色图都是来自于sendMsg函数):
设置appkey和secretkey:
下面这一段,和官方的api一样,我也是直接复制过来,改一下我参数($position是我用来打log的):
下面是对返回值的处理,返回数据的内容以及格式可以在官方文档看到:
返回值$resp,返回的是xml格式的数据。这是个坑。官方文档说是xml,所以我一开始是用simplexml_load_string()来处理$resp的,结果输出的结果是空,找了好久才发现,这货根本不需要用 simplexml_load_string() 处理,
可以直接使用的(相当于已经用 simplexml_load_string() 做处理)。
到此阿里大鱼作为第三方类库引入ThinkPHP3.2框架结束。
4 在controller中调用短信服务,以及一个我遇到的问题:
到此可以让代码跑起来。
开跑……出问题,抛出异常
为什么会这样呢,原来是因为php没有开启curl的扩展服务。
开启方法如下:
钩选php_curl即可。
2. 整合阿里大鱼SDK到ThinkPHP3.2框架
1.入驻阿里大鱼:
以下是阿里大鱼官网链接: http://www.alidayu.com/?channel=baidu&spm=a1z15.973.4467.17133&ad_id=1001319817aad41eae59&campaign_id=547194&b=1012&jlogid=a15145827db3dc
1.1 进入官网,先登录
1.2 入驻阿里大鱼
接下来是配置短信模板,和创建应用,要先创建应用才可以下载SDK。
创建应用:
1.3下载SDK:
创建应用成功后,点红色框
另外还有另一种下载SDK的方法:
1)进入管理中心
再进入 开发者控制台:
在开发者控制台可以看到刚刚创建的应用:
选择版本并下载:
2.根据需求选择需要的文件:
2.1 api文档可以看到:https://api.alidayu.com/doc2/apiDetail?spm=a3142.7791109.1.19.xfkKpE&apiId=25450
短信服务主要用到的是一下几个类文件:
根据官方api的示例代码,可以知道是这几个类文件:
其他三个分别是在一个两个类文件中调用。
所以,解压完SDK后,保留这几个文件,其他就可以删除,当然你保留也不会怎么的。
3. 将选好的文件作为第三方类库引入ThinkPHP3.2框架
引入第三方类库的方法,再次不做累述,在我的另外的一片博文有详细说明。
以下是我自己的部署,以及代码的写法:
3.1 将选好文件放在Library下的AliMsg文件夹(这个文件是自己建的),新建一个文件AliMsgSend.class.php来访问短信服务接口。
3.2 用构造函数初始化,短信需要用来的参数:
3.3 在sendMsg函数中引入需要用到的函数,下面的Log文件是我自己写的,用来打log的(以下的几幅暗色图都是来自于sendMsg函数):
设置appkey和secretkey:
下面这一段,和官方的api一样,我也是直接复制过来,改一下我参数($position是我用来打log的):
下面是对返回值的处理,返回数据的内容以及格式可以在官方文档看到:
返回值$resp,返回的是xml格式的数据。这是个坑。官方文档说是xml,所以我一开始是用simplexml_load_string()来处理$resp的,结果输出的结果是空,找了好久才发现,这货根本不需要用 simplexml_load_string() 处理,
可以直接使用的(相当于已经用 simplexml_load_string() 做处理)。
到此阿里大鱼作为第三方类库引入ThinkPHP3.2框架结束。
4 在controller中调用短信服务,以及一个我遇到的问题:
到此可以让代码跑起来。
开跑……出问题,抛出异常
为什么会这样呢,原来是因为php没有开启curl的扩展服务。
开启方法如下:
钩选php_curl即可。
相关文章推荐
- phpstore 2016.1版激活方法
- PHP热身
- PHP增删改查
- PHP数据访问
- php this -> display
- PHP三大特性-继承
- PHP三大特性-封装
- PHP面向对象
- php之表单文件iframe异步上传
- PHP后台get和post带参请求的封装
- 利用iframe+php实现图片的上传
- php metaphone()函数解析
- TP框架基础 (二) ---空控制器和空操作
- Win7下的内置FTP组件的设置详解
- PHP TP框架
- SSIS 学习之旅 FTP访问类
- SSIS 学习之旅 FTP文件传输-脚本任务
- <转>thinkphp的各种内部函数 D()、F()、S()、C()、L()、A()、I()详解
- SSIS 学习之旅 FTP文件传输-FTP控件
- <转>用thinkPHP实现验证码的功能