easy-smsgitHub传送门:Link

1、安装:

composer require "overtrue/easy-sms"

2、config/easysms.php添加内容

<?php
return [
    // HTTP 请求的超时时间(秒)
    'timeout' => 5.0,

    // 默认发送配置
    'default' => [
        // 网关调用策略,默认:顺序调用
        'strategy' => \Overtrue\EasySms\Strategies\OrderStrategy::class,

        // 默认可用的发送网关
        'gateways' => [
            'juhe', 'aliyun',
        ],
    ],
    // 可用的网关配置
    'gateways' => [
        'errorlog' => [
            'file' => '/tmp/easy-sms.log',
        ],
        'juhe' => [
            'api_key' => env('JUHE_API_KEY'),
        ],
        'aliyun' => [
            'access_key_id' => '',
            'access_key_secret' => '',
            'sign_name' => '',
        ],
        //...
    ],
];

 3、创建一个 ServiceProvider

php artisan make:provider MessageServiceProvider

4、写入内容

<?php
namespace App\Providers;

use Overtrue\EasySms\EasySms;
use Illuminate\Support\ServiceProvider;

class EasySmsServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        //
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
        $this->app->singleton(EasySms::class, function ($app) {
            return new EasySms(config('easysms'));
        });

        $this->app->alias(EasySms::class, 'easysms');
    }
}

5、使用

$sms = app('easysms');
try {
    $sms->send(18888888888, [
        'content'  => '【通知】您的验证码是1234。如非本人操作,请忽略本短信',
        'template' => '188299',
        'data' => [
             'code' => 654321,
        ],
    ]);
} catch (\Overtrue\EasySms\Exceptions\NoGatewayAvailableException $exception) {
    $message = $exception->getResults();
    dd($message);
}
//可以用变量表示出来,有些运营商用的这个。聚合不用content,用的是模板id+数据,需要自己去定义模板。具体参见github实例

参考:Link

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐