Laravel实现阿里云发送短信

1:使用composer安装:

composer require mrgoon/aliyun-sms dev-master

2:修改config/app.php里的providers配置

 'providers'=>[
   //阿里云短信
   Mrgoon\AliSms\ServiceProvider::class,
 ]

3:修改config/app.php里的aliases配置

 'aliases' => [
   // 阿里云短信
   'AliSms'=>Mrgoon\AliSms\ServiceProvider::class,
]

4:运行 php artisan vendor:publish 命令 选择安装的数字号

php artisan vendor:publish

5:配置config/aliyunsms.php

return [
    'access_key'        => env('ALIYUN_ACCESSKEYID'), // accessKey
    'access_secret'     => env('ALIYUN_ACCESSKEYSECRET'), // accessSecret
    'sign_name'         => env('ALIYUN_SMS_SIGN_NAME'), // 签名
];

6:新增.env文件配置

ALIYUN_ACCESSKEYID=签名id
ALIYUN_ACCESSKEYSECRET=签名key 密码
ALIYUN_SMS_SIGN_NAME=你的签名

7:逻辑层代码

<?php
namespace App\Tools\Aliyun;
use App\Exceptions\WrongException;

class SendSms
{
  private $templateCode = [
    'login_code' => 'SMS_1234', // 登录注册验证码mo
  ];
  /*
  * 发送短信
  * $dtat = ["code" => 1234]; // 模板中的变量
  */
  public function send($phoneNumber, $data, $template){
    //短信模板Code
    $templateCode = $this->templateCode[$template] ?? '';
    if (!$templateCode) {
      return '模板有误';
    }
    $aliSms = new \Mrgoon\AliSms\AliSms();
    $response = $aliSms->sendSms($phoneNumber,$templateCode, $data);
    if($response->Message == 'OK'){//发送成功
       return;
    }else {//发送失败
      return '发送验证码失败';
        //throw new WrongException('发送验证码失败');
    }
  }

}
php
本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 2

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!