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


Posted in PHP onJune 14, 2019

首先安装

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 相关文章推荐
写php分页时出现的Fatal error的解决方法
Apr 18 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
Sep 24 PHP
Laravel 5框架学习之环境与配置
Apr 08 PHP
PHP中COOKIES使用示例
Jul 26 PHP
php实现的递归提成方案实例
Nov 14 PHP
crontab无法执行php的解决方法
Jan 25 PHP
PHP使用fopen与file_get_contents读取文件实例分享
Mar 04 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
Dec 25 PHP
PHP实现数组和对象的相互转换操作示例
Mar 20 PHP
PHP实现提高SESSION响应速度的几种方法详解
Aug 09 PHP
PHP中用Trait封装单例模式的实现
Dec 18 PHP
PHP 数组操作详解【遍历、指针、函数等】
May 13 PHP
PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】
Jun 14 #PHP
PHP面向对象程序设计子类扩展父类(子类重新载入父类)操作详解
Jun 14 #PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
Jun 13 #PHP
PHP面向对象程序设计重载(overloading)操作详解
Jun 13 #PHP
PHP面向对象程序设计之构造方法和析构方法详解
Jun 13 #PHP
PHP Cli 模式设置进程名称的方法
Jun 12 #PHP
PHP面向对象程序设计之对象克隆clone和魔术方法__clone()用法分析
Jun 12 #PHP
You might like
基于PHP开发中的安全防范知识详解
2013/06/06 PHP
利用php下载xls文件(自己动手写的)
2014/04/18 PHP
PHP删除数组中指定下标的元素方法
2018/02/03 PHP
PHP接入支付宝接口失效流程详解
2020/11/10 PHP
选择TreeView控件的树状数据节点的JS方法(jquery)
2010/02/06 Javascript
JavaScript中判断原生函数检查function是否是原生代码
2014/09/09 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
2015/04/14 Javascript
JS面向对象编程详解
2016/03/06 Javascript
javascript实现秒表计时器的制作方法
2017/02/16 Javascript
基于 D3.js 绘制动态进度条的实例详解
2018/02/26 Javascript
详解javascript函数写法大全
2019/03/25 Javascript
js Array.slice的8种不同用法示例
2019/07/10 Javascript
解决element-ui的下拉框有值却无法选中的情况
2020/11/07 Javascript
pycharm激活方法到2099年(激活流程)
2020/09/22 Python
Python pip 常用命令汇总
2020/10/19 Python
python 使用OpenCV进行简单的人像分割与合成
2021/02/02 Python
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
挪威户外活动服装和装备购物网站:Bergfreunde挪威
2016/10/20 全球购物
SKECHERS斯凯奇中国官网:来自美国的运动休闲品牌
2018/11/14 全球购物
澳大利亚玩具剧场:Toy Playhouse
2019/03/03 全球购物
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
行政文员岗位职责
2013/11/08 职场文书
护理专业自荐信范文
2014/02/26 职场文书
关于随地扔垃圾的检讨书
2014/09/30 职场文书
终止劳动合同证明书样本
2014/11/19 职场文书
博士给导师的自荐信
2015/03/06 职场文书
2015年超市工作总结
2015/04/09 职场文书
2015年组织委员工作总结
2015/04/23 职场文书
检讨书范文大全
2015/05/07 职场文书
2020优秀员工演讲稿(三篇)
2019/10/17 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
用Python制作灯光秀短视频的思路详解
2021/04/13 Python
python获取对象信息的实例详解
2021/07/07 Python
Win11使用CAD卡顿或者致命错误怎么办?Win11无法正常使用CAD的解决方法
2022/07/23 数码科技