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

雨越下越大,往远处看去,好象一块薄雾遮住了视线,灰蒙蒙一片,树啊,房子啊,什么也看不清了。

首先安装

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);

到此这篇关于PHP如何实现阿里云短信sdk灵活应用在项目中的方法就介绍到这了。成功等于百分之一的灵感加上百分之九十九的汗水。更多相关PHP如何实现阿里云短信sdk灵活应用在项目中的方法内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

您可能有感兴趣的文章
PHP如何实现HTTP验证

php如何实现数据库的备份和恢复

详解如何实现Laravel的服务容器的方法示例

浅析php如何实现爬取数据原理

Laravel路由中不固定数量的参数如何实现?