600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > php接入aws短信 亚马逊短信(AWS-SMS)

php接入aws短信 亚马逊短信(AWS-SMS)

时间:2021-07-25 18:29:08

相关推荐

php接入aws短信 亚马逊短信(AWS-SMS)

#### 1. 使用`composer`集成`aws-sdk-php`

linux或MacOS用户在项目跟目录使用命令:`php composer.phar require aws/aws-sdk-php` 加载`aws-sdk-php`,整个过程随时网速的快慢而定,输入命令回车了之后半天卡在那里不动,不要认为是死机了。成功后发现根目录多了`vender`文件夹

#### 2. 获取亚马逊AWS的key和secret

登录[亚马逊AWS平台](https://ap-southeast-1.console./console/home?region=ap-southeast-1#),在右上角用户名下找到并点击`My Security Credentials`,弹窗点击继续,找到`Access keys (access key ID and secret access key)`,生成`key`和`secret`,一定要下载文件,不然的话再看就看不到了

>[info] 如果未设置相关子账户需要使用根证书登录

#### 3. 使用aws-sdk-php发短信

~~~

/**

* 亚马逊发生短信给世界各地客户

* User: yongjin.xiong 98383028@

* Date: /11/20 下午4:53

*/

public function aws_sms(){

require './vendor/autoload.php';

error_reporting(E_ALL);

ini_set("display_errors", 1);

$params = array(

'credentials' => array(

'key' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXX',

'secret' => 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX',

),

'region' => 'ap-southeast-1', // < your aws from SNS Topic region

'version' => '-03-31'

);

$sns = new \Aws\Sns\SnsClient($params);

$args = array(

"SenderID" => "SenderName",

"SMSType" => "Transactional",

"Message" => "Your Verification Code is ".rand(1000,9999).'【Themiss】',

"PhoneNumber" => "+8615822865568"

);

$result = $sns->publish($args);

$arr = (array)$result;

//$arr = $this->object_to_array($result);

dump($arr);

}

~~~

当出现如下结果时代表发送成功:

![](/353510dcbf253e30d264a9346576e9ce_824x440.png)

>[danger] Mac系统下没有问题,Windows平台好像有点儿问题,关于curl的

>[info] 给App推送也可使用aws的SNS服务,具体实施办法后续再写

参考资料:

http://docs./zh_cn/pinpoint/latest/apireference/rest-api-sms-channel.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。