阿里大鱼最新下载地址:阿里大鱼SDK下载 或者从官网进行下载:阿里大鱼SDK官网下载
下载完成后,将压缩包内的api_sdk文件夹放到ThinkPHP\Library\Vendor目录下,修改文件名为Aliyun,若修改为其他名称,请修改命名空间!
阿里大鱼申请步骤就不说了!开始接入吧~
设置阿里大鱼配置信息:
在配置文件中配置:
1 ????‘ALI_SMS‘ => [ 2 ????????‘PRODUCT‘ => ‘Dysmsapi‘, 3 ????????‘DOMAIN‘ => ‘dysmsapi.aliyuncs.com‘, 4 ????????‘REGION‘ => ‘cn-hangzhou‘, 5 ????????‘END_POINT_NAME‘ => ‘cn-hangzhou‘, 6 ????????‘KEY_ID‘ => ‘你的 Access Key ID‘, 7 ????????‘KEY_SECRET‘ => ‘你的 Access Key Secret‘, 8 ????????‘SIGN_NAME‘ => ‘签名名称‘, 9 ????????‘TEMPLATE_CODE‘ =>‘模板code‘,10 ????],
设置完成以后,在function.php文件中新建发送短信函数,这里命名为sendCode:
<?phpuse Aliyun\Core\Config;use Aliyun\Core\Profile\DefaultProfile;use Aliyun\Core\DefaultAcsClient;use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest;/** * Created by PhpStorm. * User: Administrator * Date: 2018/5/2 0002 * Time: 10:20 */function sendCode($num,$code){ ???require_once ‘/ThinkPHP/Library/Vendor/Aliyun/vendor/autoload.php‘; ???//加载区域结点配置 ???Config::load(); ???// 初始化用户Profile实例 ???$profile = DefaultProfile::getProfile(C(‘ALI_SMS.REGION‘), C(‘ALI_SMS.KEY_ID‘), C(‘ALI_SMS.KEY_SECRET‘)); ???// 增加服务结点 ???DefaultProfile::addEndpoint(C(‘ALI_SMS.END_POINT_NAME‘), C(‘ALI_SMS.REGION‘), C(‘ALI_SMS.PRODUCT‘), C(‘ALI_SMS.DOMAIN‘)); ???// 初始化AcsClient用于发起请求 ???$acsClient= new DefaultAcsClient($profile); ???// 初始化SendSmsRequest实例用于设置发送短信的参数 ???$request = new SendSmsRequest(); ???// 必填,设置雉短信接收号码 ???$request->setPhoneNumbers($num); ???// 必填,设置签名名称 ???$request->setSignName(C(‘ALI_SMS.SIGN_NAME‘)); ???// 必填,设置模板CODE ???$request->setTemplateCode(C(‘ALI_SMS.TEMPLATE_CODE‘)); ???// 可选,设置模板参数 ???$request->setTemplateParam(json_encode(array( ?// 短信模板中字段的值 ???????"code"=>$code, ???????"product"=>"dsd" ???), JSON_UNESCAPED_UNICODE)); ???//发起访问请求 ???$acsResponse = $acsClient->getAcsResponse($request); ???//返回请求结果 ???$result = json_decode(json_encode($acsResponse),true); ???return $result;}
使用,只在=在控制器中调用sendCode函数即可:
public function sendmsg(){ ???$phone = input(‘post.phone_num‘); ???$code = rand(100000,999999); ???$res = sendCode($phone,$code); ???if($code == "OK"){ ???????$data = array(‘msg‘=>‘success‘); ???}else{ ???????$data = array(‘msg‘=>‘error‘); ???} ???return json_encode($data);}
效果如下所示:
原文地址:张先生的博客 http://www.zhangfayuan.cn/archives/201805041200198.html
Tihinkphp3.2整合最新版阿里大鱼进行短信验证码发送
原文地址:https://www.cnblogs.com/zfy0818/p/8993861.html