TP3.2接入新版SDK阿裡大於

字號+ 編輯: 国内TP粉 修訂: 种花家 來源: ThinkPHP 2023-09-10 我要說兩句(0)

不知道這文章還有用沒用了...

阿裡大於已經合並至阿裡雲,好多文档都是寫的以前大於的SDK接入,我在事例中使用的是7.18更新的SDK, 部分代碼借鋻別人部落格

針對還不是很清楚的朋友們寫一次圖文的

1.獲取到accessKeyId和accessKeySecret

開通短信服務後進入
https://dysms.console.aliyun.com/dysms.htm?spm=5176.2020520115.0.0.5e72c4c98dhAUW#/account
滑鼠放置自己用戶名上,會出現下拉框,選中【accesskeys】,選擇繼續使用,獲取到accessKeyId和accessKeySecret
然後申請【短信模板】【短信簽名】,請注意,如果短信中出現測試等字樣,很大幾率被運營商攔截,所以請自由發揮

2.下載SDK

https://help.aliyun.com/document_detail/55359.html?spm=5176.doc55451.6.569.0uXt4J
進入後選擇PHP,會得到dysmsapi_demo_sdk__php.zip,解壓

3.放置API

在TP根目錄下創建文档夾【Api】,並將api_sdk整個文档夾複制進去,改名dysms(可自由取名)

4.引入API文档

在自己需要調用的控制器頭部引入如下路徑

 1. use Aliyun\Core\Config;  
 2. use Aliyun\Core\Profile\DefaultProfile;  
 3. use Aliyun\Core\DefaultAcsClient;  
 4. use Aliyun\Api\Sms\Request\V20170525\SendSmsRequest;

5. 代碼部分

附上源碼public function sendMsg($mobile,$username)

{
    require_once  './Api/dysms/vendor/autoload.php';    //此處爲你放置API的路徑
    Config::load();             //加載區域結點配置
    $accessKeyId = '*******';
    $accessKeySecret = '*******';
    $templateCode = '82565004';   //短信模板ID
    //短信API産品名(短信産品名固定,無需修改)
    $product = "Dysmsapi";
    //短信API産品域名(接口地址固定,無需修改)
    $domain = "dysmsapi.aliyuncs.com";
    //暫時不支持多Region(目前僅支持cn-hangzhou請勿修改)
    $region = "cn-hangzhou";
    // 初始化用戶Profile實例
    $profile = DefaultProfile::getProfile($region, $accessKeyId, $accessKeySecret);
    // 增加服務結點
    DefaultProfile::addEndpoint("cn-hangzhou", "cn-hangzhou", $product, $domain);
    // 初始化AcsClient用於發起請求
    $acsClient = new DefaultAcsClient($profile);
    // 初始化SendSmsRequest實例用於設置發送短信的參數
    $request = new SendSmsRequest();
    // 必填,設置短信接收號碼
    $request->setPhoneNumbers($mobile);    //$moblie是我前台傳入的電話
    // 必填,設置簽名名稱
    $request->setSignName("來自RayZoey");      //此處需要填寫你在阿裡上創建的簽名
    // 必填,設置模板CODE
    $request->setTemplateCode("SMS_84030003");    //短信模板編號
    
    $smsData = array('username'=>$username);    //所使用的模板若有變量 在這裡填入變量的值  我的變量名爲username此處也爲username
    $request->setTemplateParam(json_encode($smsData));    
    //發起訪問請求
    $acsResponse = $acsClient->getAcsResponse($request);
    //返回請求結果
    $result = json_decode(json_encode($acsResponse), true);
    return $result;
}


閲完此文,您的感想如何?
  • 有用

    1

  • 沒用

    1

  • 開心

    1

  • 憤怒

    1

  • 可憐

    1

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • PHP的換行符是什麽

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯繫商家解決

我要說說
網上賓友點評