1.准备工作
? ? ? ? 如果不想申请签名和模板可以通过阿里云给出的api发送测试(https://dysms.console.aliyun.com/quickstart)来进行检测,绑定手机号码并且填写给出的签名和模板
?使用上面方法可以忽略以下2条
????????1.申请签名
阿里云短信服务欢迎登录阿里云,全球领先的云计算及人工智能科技公司,阿里云为200多个国家和地区的企业、开发者和政府机构提供云计算基础服务及解决方案。阿里云云计算、安全、大数据、人工智能、企业应用、物联网等云计算服务。https://dysms.console.aliyun.com/
? ? ? ? ? ? ? ? 访问阿里云短信服务在左侧导航栏找到国内消息
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
????????????????点击添加签名
? ? ? ? ? ? ?
? ? ? ? ?按照实际情况选择自用或者他用,我这里选的自用,按照要求填写相关信息,只要备案域名或者是上线app肯定能通过
?
?2.申请模板
? ? ? ? 可以按照图上填写,也可以按照实际需要填写,关联签名就是第一步申请的签名(如果你已经申请通过点一下就会出现下拉选项),场景链接就是首页的链接。
????????点击获取AK后跳转界面创建子账户(如果是自己测试,随便玩玩的话,不需要使用子用户避免麻烦,正式开发中建议使用子用户)
?
????????访问方式下的Open API调用访问打钩,填写登录名称以及显示名称
?????????创建成功后记录下AccessKey ID和AccessKey Secret
????????点击左侧导航栏用户
????????右侧会显示刚刚创建的用户,点击添加权限
?????????搜索短信后显示2条权限,把两条权限全部进行添加
2.下载安装
? ? ? ? 1.下载完整工程
阿里云 OpenAPI 开发者门户https://next.api.aliyun.com/api/Dysmsapi/2017-05-25/SendSms?spm=a2c4g.11186623.0.0.76dfde53ReGJAH?ms=%7B%7D&sdkStyle=old&lang=PHP
?
?把下载好的压缩包解压到目录
2.安装SDK依赖
? ? ? ? Linux:进入解压的目录
?????????运行命令
composer require alibabacloud/dysmsapi-20170525 2.0.18
????????运行结果成功
?????????这时候目录内就会多出一个文件夹和一个说明文件
3.修改测试
????????打开src文件夹内的Sample.php文件修改
<?php
// This file is auto-generated, don't edit it. Thanks.
namespace AlibabaCloud\SDK\Sample;
use AlibabaCloud\SDK\Dysmsapi\V20170525\Dysmsapi;
use AlibabaCloud\Tea\Tea;
use AlibabaCloud\Tea\Utils\Utils;
use AlibabaCloud\Tea\Console\Console;
use Darabonba\OpenApi\Models\Config;
use AlibabaCloud\SDK\Dysmsapi\V20170525\Models\SendSmsRequest;
use AlibabaCloud\Tea\Utils\Utils\RuntimeOptions;
class Sample {
public static function createClient(){
$config = new Config([
// 您的 AccessKey ID
"accessKeyId" => '修改',// 修改
// 您的 AccessKey Secret
"accessKeySecret" => '修改'// 修改
]);
return new Dysmsapi($config);
}
/**
* @param string[] $args
* @return void
*/
public static function main($args){
$client = self::createClient("ACCESS_KEY_ID", "ACCESS_KEY_SECRET");
$phone = $args['phone'];// 新增
$templa = $args['templa'];// 新增
$sendSmsRequest = new SendSmsRequest([
"phoneNumbers" => $phone,// 修改
"signName" => "签名",// 修改
"templateCode" => "模板",// 修改
"templateParam" => "{\"yzm\":\"$templa\"}"// 修改
]);
$runtime = new RuntimeOptions([]);
$resp = $client->sendSmsWithOptions($sendSmsRequest, $runtime);
Console::log(Utils::toJSONString(Tea::merge($resp))) ;
}
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . '..' . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
require_once $path;
}
Sample::main($args);// 修改
自定义文件传输参数register.php(此文件和src目录同级)
$mot=$_POST['mot'];
if(empty($mot)){echo "err1";exit;}
$smsv =rand(100000,999999);
session_start();
$_SESSION["REGMOT"]=$mot;
$_SESSION["REGMOTYZ"]=$smsv;
$args = ['phone'=>$mot,'templa'=>$smsv];
include("./src/Sample.php");
前端用Ajax或者from表单向register.php提交下手机号即可
说明:注意没有使用测试签名和模板的短信必须要余量
???????
备注:如果此教程有什么问题可以私聊联系我
|