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 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 2

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
文章
1
粉丝
0
喜欢
0
收藏
0
排名:2768
访问:273
私信
所有博文
博客标签
社区赞助商