阿里云PHP SMS短信服务验证码发送方法详解
阅读 69484 · 发布日期 2020-08-24 11:44 · 温州优光网络科技有限公司|建站|APP小程序制作|做网站SEO推广优化
【摘要】
开通SMS服务首先去这个网站开通阿里云的SMS短信服务:https://www.aliyun.com/product/sms?spm=5176.8142029.388261.295.vU5T5g相关学习推荐:php编程(视频)创建签名、模板要使用短信服务器需要先创建签名和模板,并提交给阿里云审核通过才可以正常使用短信服... 【温州小程序开发,温州微信公众号,平阳做网站,平阳网站建设公司,平阳小程序商城制作,昆阳万全做网站,鳌江水头小程序,萧江腾蛟微信公众号,山门顺溪南雁海西南麂凤卧麻步怀溪网络网店服务,政采云网店管理服务】...
开通SMS服务首先去这个网站开通阿里云的SMS短信服务:
https://www.aliyun.com/product/sms?spm=5176.8142029.388261.295.vU5T5g相关学习推荐:
php编程(视频)创建签名、模板要使用短信服务器需要先创建签名和模板,并提交给阿里云审核通过才可以正常使用短信服务。
创建签名创建签名的时候注意一下签名名称,其他的话就不累赘了。
记住签名名称现在请记住你创建的签名名称,一会在代码中需要使用。
创建模板创建模板也很简单,阿里云已经把要如何填写写的很清楚了。
查看并记住模板CODE返回你的控制台,当你的模板审核通过时这就会出现大于0的数。
点击这个数,会进入模板管理面板就能看到你的模板CODE了,请记住他。
创建并记住KeyId和KeySecret到控制台,把鼠标放到右上角你的用户名的位置会出现一个accessKeySecret点进去就可以创建KeyId和KeySecret了,如果他提醒你用RAM安全什么的,你看你要不要给你的员工分配权限,如果要的话就用RAM,否则就直接点击继续使用就行了。
下载阿里云短信服务器PHP-SDK官方下载地址:
https://help.aliyun.com/document_detail/55359.html?spm=5176.8195934.507901.12.b1ngGK 本教程使用SDK下载地址:
http://pan.baidu.com/s/1bpF5B8z密匙:
pult创建PHP-SMS项目创建代码文件创建你的代码文件,并把这个文件放在刚才下载的SDK文件夹中的api_sdk的aliyun-php-sdk-core目录下,并把一下代码写入代码文件。
aliyun-php-sdk-core目录里包含了SMS短信服务的各种模块,所以必须得放在这里面才能使用服务Config.php'
;
include_once '
Request/V20170525/SendSmsRequest.php'
;
include_once '
Request/V20170525/QuerySendDetailsRequest.php'
;
$accessKeyId = "LTAIvAaNs61JeBiN";
//阿里云KeyId $accessKeySecret = "Y3H7durYJ6GIqmJJrsdbJwPi6E8O8M";
//阿里云KeySecret //短信API产品名 $product = "Dysmsapi";
//照写就行了 //短信API产品域名 $domain = "dysmsapi.aliyuncs.com";
//照着写就行了 //暂时不支持多Region $region = "cn-hangzhou";
//照着写就行了 //初始化访问的acsCleint $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);
$acsClient= new DefaultAcsClient($profile);
$request = new SendSmsRequest;
//必填-短信接收号码。
支持以逗号分隔的形式进行批量调用,批量上限为20个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式 $request->setPhoneNumbers("123456789");
//这里填你要发送的电话号码 //必填-短信签名 $request->setSignName("xx项目");
//这里就是刚才让你记住的项目签名 //必填-短信模板Code $request->setTemplateCode("SMS_123456");
//这里就是模板CODE //选填-假如模板中存在变量需要替换则为必填(JSON格式) $request->setTemplateParam("{
"name":"郭涛","number":"316"}
");
//选填-发送短信流水号 $request->setOutId("1234");
//照填就行了 //发起访问请求 $acsResponse = $acsClient->getAcsResponse($request);
var_dump($acsResponse);
//返回结果移入Requset还是在下载的SDK文件夹中的api_sdk目录下,有一个交Dysmsapi的文件夹,打开这个文件夹就会看到一个叫Request的文件夹,把这个Reques。
的件夹复制粘贴到aliyun-php-sdk-core里面。
说实在的我搞不清阿里云这个为什么要这样分开装SDK,可能是我使用的姿势不对吧,如果有大神搞得清,还劳烦赐教小弟,好人一生平安。
移入后,打开RequestV20170525目录里有一个SendSmsRequest.php的源文件。
请屏蔽第一行的空间命名。
也就是这一行namespace DysmsapiReqestV20170525;
最后效果如下 you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ //namespace DysmsapiRequestV20170525;
//就是屏蔽这一行代码!!!! class SendSmsRequest extends RpcAcsRequest {
function __construct() {
parent::__construct("Dysmsapi", "2017-05-25", "SendSms");
}
private $outId;
private $signName;
private $ownerId;
private $resourceOwnerId;
private $templateCode;
private $phoneNumbers;
private $resourceOwnerAccount;
private $templateParam;
public function getOutId() {
return $this->outId;
}
public function setOutId($outId) {
$this->outId = $outId;
$this->queryParameters["OutId"]=$outId;
}
public function getSignName() {
return $this->signName;
}
public function setSignName($signName) {
$this->signName = $signName;
$this->queryParameters["SignName"]=$signName;
}
public function getOwnerId() {
return $this->ownerId;
}
public function setOwnerId($ownerId) {
$this->ownerId = $ownerId;
$this->queryParameters["OwnerId"]=$ownerId;
}
public function getResourceOwnerId() {
return $this->resourceOwnerId;
}
public function setResourceOwnerId($resourceOwnerId) {
$this->resourceOwnerId = $resourceOwnerId;
$this->queryParameters["ResourceOwnerId"]=$resourceOwnerId;
}
public function getTemplateCode() {
return $this->templateCode;
}
public function setTemplateCode($templateCode) {
$this->templateCode = $templateCode;
$this->queryParameters["TemplateCode"]=$templateCode;
}
public function getPhoneNumbers() {
return $this->phoneNumbers;
}
public function setPhoneNumbers($phoneNumbers) {
$this->phoneNumbers = $phoneNumbers;
$this->queryParameters["PhoneNumbers"]=$phoneNumbers;
}
public function getResourceOwnerAccount() {
return $this->resourceOwnerAccount;
}
public function setResourceOwnerAccount($resourceOwnerAccount) {
$this->resourceOwnerAccount = $resourceOwnerAccount;
$this->queryParameters["ResourceOwnerAccount"]=$resourceOwnerAccount;
}
public function getTemplateParam() {
return $this->templateParam;
}
public function setTemplateParam($templateParam) {
$this->templateParam = $templateParam;
$this->queryParameters["TemplateParam"]=$templateParam;
}
}
完成运行试试吧 相关学习推荐:
编程视频以上就是阿里云PHP SMS短信服务验证码发送方法详解的详细内容,更多请关注php中文网其它相关文章!
微信
分享相关标签:
阿里云 短信服务 php本文转载于:
jb51,如有侵犯,请联系a@php.cn删除
上一篇:
详解php版阿里云OSS图片上传类
下一篇:
掌握php短信接口代码相关文章相关视频阿里云短信服务的详解阿里短信服务的介绍及使用步骤最新阿里云短信服务接口类【亲测成功】详解php版阿里云OSS图片上传类阿里云PHP SMS短信服务验证码发送方法详解通过PHP程序添加数据通过PHP程序删除数据析构函数基本介绍 php程序执行流程PHP重载-属性拦截器 [温州做网站PHP教程]