php教程

超轻量级php框架startmvc

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

更新时间:2020-04-05 21:53:49 作者:startmvc
首先安装composerrequirealibabacloud/sdk接着看alibabacloud官网文档https://packagist.org/packages/alibabacloud/

首先安装


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