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版(3)
Oct 09 PHP
聊天室php&amp;mysql(五)
Oct 09 PHP
PHP开发中常用的8个小技巧
Aug 27 PHP
PHP 高级课程笔记 面向对象
Jun 21 PHP
PHP fgetcsv 定义和用法(附windows与linux下兼容问题)
May 29 PHP
使用dump函数,给php加断点测试
Jun 25 PHP
codeigniter教程之上传视频并使用ffmpeg转flv示例
Feb 13 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
Jun 10 PHP
php pthreads多线程的安装与使用
Jan 19 PHP
Yii rules常用规则示例
Mar 15 PHP
php禁用函数设置及查看方法详解
Jul 25 PHP
php 多继承的几种常见实现方法示例
Nov 18 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
给海燕B411配件机起死回生配上件
2021/03/02 无线电
杏林同学录(四)
2006/10/09 PHP
php公用函数列表[正则]
2007/02/22 PHP
PHP XML操作的各种方法解析(比较详细)
2010/06/17 PHP
php5.3提示Function ereg() is deprecated Error问题解决方法
2014/11/12 PHP
php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
2016/12/10 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
js监听输入框值的即时变化onpropertychange、oninput
2011/07/13 Javascript
取得窗口大小 兼容所有浏览器的js代码
2011/08/09 Javascript
js Event对象的5种坐标
2011/09/12 Javascript
jQuery绑定事件-多种实现方式总结
2016/05/09 Javascript
原生js实现商品放大镜效果
2017/01/12 Javascript
jQuery为DOM动态追加事件的方法
2017/02/16 Javascript
前端开发不得不知的10个最佳ES6特性
2017/08/30 Javascript
详解vue-cli3多页应用改造
2019/06/04 Javascript
Vue 使用计时器实现跑马灯效果的实例代码
2019/07/11 Javascript
微信小程序与公众号卡券/会员打通的问题
2019/07/25 Javascript
JS中的算法与数据结构之栈(Stack)实例详解
2019/08/20 Javascript
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
跟老齐学Python之大话题小函数(1)
2014/10/10 Python
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
python实现壁纸批量下载代码实例
2018/01/25 Python
Django 中使用流响应处理视频的方法
2018/07/20 Python
浅谈Django的缓存机制
2018/08/23 Python
Django 配置多站点多域名的实现步骤
2019/05/17 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
html5中的一些标签学习(心得)
2016/10/18 HTML / CSS
Java的类与C++的类有什么不同
2014/01/18 面试题
教师试用期自我鉴定
2014/02/12 职场文书
期末学生评语大全
2014/04/24 职场文书
颂军魂爱军营演讲稿
2014/09/13 职场文书
毕业答辩开场白范文
2015/05/27 职场文书
Go语言 go程释放操作(退出/销毁)
2021/04/30 Golang
Java中多线程下载图片并压缩能提高效率吗
2021/07/01 Java/Android