PHP如何实现阿里云短信sdk灵活应用在项目中的方法

1,034次阅读
没有评论

首先安装

composer require alibabacloud/sdk 


接着看 alibabacloud 官网文档

https://packagist.org/packages/alibabacloud/sdk

示例

My_composer_aliyunsms.php

<?php
// use Swoft\Task\Bean\Annotation\Task;
// use AlibabaCloud\Client\AlibabaCloud;
// use AlibabaCloud\Client\Exception\ClientException;
// use AlibabaCloud\Client\Exception\ServerException;
 
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
use AlibabaCloud\Ecs\Ecs;
 
/**
 * 阿里信息发送类
 * @Task("ali")
 */
class My_composer_aliyunsms
{
  /**
   * 发送短信验证码
   */
  public function sendCode($config,$phone,$code)
  {
    $param = ['code' => $code];
    AlibabaCloud::accessKeyClient($config['accessKeyId'], $config['accessSecret'])
      ->regionId($config['regionId'])
      ->asGlobalClient();
 
    try {$result = AlibabaCloud::rpcRequest()
        ->product('Dysmsapi')
        ->version('2017-05-25')
        ->action('SendSms')
        ->method('POST')
        ->options([
          'query' => [
            'PhoneNumbers' => $phone,
            'SignName' => $config['SignName'],
            'TemplateCode' => $config['TemplateCode'],
            'TemplateParam' => json_encode($param)
          ],
        ])
        ->request();
      return $result->toArray();} catch (ClientException $e) {echo $e->getErrorMessage() . PHP_EOL;
    } catch (ServerException $e) {echo $e->getErrorMessage() . PHP_EOL;
    }
  }
}

demo

include 'My_composer_aliyunsms.php';
$sms = new My_composer_aliyunsms();
$phone='xxxxxx';
$code='99999'; 
$config = [
 'accessKeyId' => 'LTAIMje******hS',
 'accessSecret' => 'fMuQTLUrKQN******Z2m07',
 'SignName' => '****',
 'TemplateCode' => 'SMS_****04',
 'regionId' => 'cn-hangzhou'
];
$re = $sms->sendCode($config,$phone,$code);  
var_dump($re); 




正文完
 0
飞翔的mouse
版权声明:本站原创文章,由 飞翔的mouse 于2019-09-26发表,共计1476字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。