一、首先需要阿里云官网开通短信服务,然后记录下以下关键字段【accessKeyId】,【accessKeySecret】,【短信签名】,【模板CODE】
二、进入官方开发指南下载SDKDemo
做好以上准备工作后就开始准备撸码了
下载好的SDK包应该包含以下文件
- api_demo(短信服务API接口调用DEMO工程)
- api_sdk(短信服务API接口依赖的SDK)
- msg_demo(短信回执消息的DEMO)
- msg_sdk(短信回执消息的SDK)
我们只需要前面两个api开头的文件就行了。后面的暂时不用,可以删掉。
先把最重要的api_sdk文件夹随便放到一个服务器的路径下(方便调用)
然后我们就需要修改api_demo文件目录下的SmsDemo.php文件了
<?php
ini_set("display_errors", "on");
//自动加载api_adk
require_once $_SERVER['DOCUMENT_ROOT'].'/api_sdk/vendor/autoload.php';
use Aliyun\Core\Config;
use Aliyun\Core\Profile\DefaultProfile;
use Aliyun\Core\DefaultAcsClient;
use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest;
use Aliyun\Api\Sms\Request\V20170525\SendBatchSmsRequest;
use Aliyun\Api\Sms\Request\V20170525\QuerySendDetailsRequest;
// 加载区域结点配置
Config::load();
/**
* Class SmsDemo
*
* 这是短信服务API产品的DEMO程序,直接执行此文件即可体验短信服务产品API功能
* (只需要将AK替换成开通了云通信-短信服务产品功能的AK即可)
* 备注:Demo工程编码采用UTF-8
*/
class SmsDemo
{
static $acsClient = null;
/**
* 取得AcsClient
*
* @return DefaultAcsClient
*/
public static function getAcsClient() {
//产品名称:云通信短信服务API产品,开发者无需替换
$product = "Dysmsapi";
//产品域名,开发者无需替换
$domain = "dysmsapi.aliyuncs.com";
// TODO 此处需要替换成开发者自己的AK (https://ak-console.aliyun.com/)
$accessKeyId = "xxxxxxxxxxxxx"; // AccessKeyId
$accessKeySecret = "xxxxxxxxxx"; // AccessKeySecret
// 暂时不支持多Region
$region = "cn-hangzhou";
// 服务结点
$endPointName = "cn-hangzhou";
if(static::$acsClient == null) {
//初始化acsClient,暂不支持region化
$profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
// 增加服务结点
DefaultProfile::addEndpoint($endPointName, $region, $product, $domain);
// 初始化AcsClient用于发起请求
static::$acsClient = new DefaultAcsClient($profile);
}
return static::$acsClient;
}
/**
* 发送