laravel 发送短信

 

1.路由

Route::get("/sendsms","Home\SmsController@sendsms");//发送短信

 

2.控制器

SmsController

<?php

namespace APP\Http\Controllers\Home;

 

use App\Http\Controllers\Controller;

use App\Models\Sms;

use Illuminate\Http\Request;

use Illuminate\Http\Response;

/**

* 短信发送控制器

*

* 作者:gs.wang

* 时间:2018年6月6日

*/

 

class SmsController extends Controller{

public function sendsms(Request $request){

$Sms=new Sms();

$phone=$request->get('phone');

$response = $Sms->sendsms($phone);

return new Response($response);

}

}

3.config

config/sms.php;

<?php

 

return [

'appid' => 1400064604,

'appkey' => "自己在对应平台获取",

'templateId' => 82187,

'smsSign' => "艺朝艺夕教育集团",

];

4.安装composer.json 发短信插件

 

"require": {

"php": "^7.1.3",

"fideloper/proxy": "^4.0",

"illuminate/html": "^5.0",

"laravel/framework": "5.6.*",

"laravel/tinker": "^1.0",

"laravelcollective/html": "^5.5",

"maatwebsite/excel": "~2.1.0",

"zizaco/entrust": "^1.9",

"qcloudsms/qcloudsms_php": "^0.1.1" //短信插件

},

 

5.建立Sms的Model

<?php

namespace App\Models;

 

use Illuminate\Database\Eloquent\Model;

use Illuminate\Support\Facades\Cache;

use Qcloud\Sms\SmsSingleSender;

use Illuminate\Http\Response;

 

 

class Sms {

public function sendsms($phones){

$code = rand(100000, 999999);

// echo $phones;exit;Cache

$templateId = 86954;

$params = [$code];

Cache::put($phones, $code, 120);

$sign = "";

try {

$ssender = new SmsSingleSender(config('sms.appid'), config('sms.appkey'));

$result = $ssender->sendWithParam("86", $phones, $templateId, $params, $sign, "", "");

$rsp = json_decode($result);

$response = ['msg' => $rsp->errmsg, 'status' => $rsp->result];

} catch (\Exception $e) {

$response = ['msg' => $e];

}

return $response;

}

}

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值