laravel 调用第三方 发送邮件 (php)

composer一个集成腾讯云、短信宝短信发送的工具类: 

composer require mrwanghongda/sms-sdk

控制器类文件引入该类文件: 

use Mrwanghongda\SmsSdk\Sms\SmsFactory;

控制器类文件常量: 

/**
 * 短信宝
 */
const SMS_BAO = 'bao';

/**
 * 腾讯云
 */
const SMS_TENCENT = 'tencent'; 

控制器类文件方法: 

/**
 * 发送验证码
 * @param Request $request
 * @return \think\response\Json
 */
function send2(Request $request){
    $code=rand(0000,9999);
    $tel=$request->post('tel');
    //工厂模式
    $smsObj = (new SmsFactory(SmsFactory::SMS_BAO))->getSmsService();
    $config = [
        /* 填写平台对应的CAM密匙secretId,短信宝填写平台账号*/
        'secretId' => '',
        /* 填写平台对应的CAM密匙secretKey,短信宝填写平台密码*/
        'secretKey' => '',
        /* 短信应用ID: 短信SdkAppId在 [短信控制台] 添加应用后生成的实际SdkAppId,示例如1400006666 ,短信宝默认为空*/
        'smsSdkAppId' => '',
        /* 验证码,示例如5039 */
        'code' => $code,
        /* 填写腾讯、阿里平台对应的签名内容,短信宝则默认为空 */
        'signName' => '',
        /* 发送的手机号,示例如17899873465 */
        'tel' => $tel,
        /* 模板 ID: 必须填写已审核通过的模板 ID。模板ID可登录 [短信控制台] 查看 */
        'templateId' => "",
        /* 模板发送的短信内容,短信宝则需要填写 如:"【短信宝】您的验证码是"5390",3分钟有效。", 腾讯、阿里默认为空 */
        'content' => '【短信宝】您的验证码是'.$code.',3分钟有效。',//
    ];
    $result = $smsObj->send($config);
    return json([
        'code'=>200,
        'msg'=>'成功',
        'data'=>$config['content']
    ]);
}

猜你喜欢

转载自blog.csdn.net/zawxse_/article/details/125905101