TP5呼叫阿里雲簡訊介面實現傳送簡訊功能

2021-09-11 06:40:11 字數 3398 閱讀 1731

因為專案中需要用到阿里雲簡訊驗證碼功能,所以就購買了相應的簡訊包進行測試,以下就是完整**:

use aliyun\core\config;  

use aliyun\core\profile\defaultprofile;  

use aliyun\core\defaultacsclient;  

use aliyun\api\sms\request\v20170525\sendsmsrequest; 

/*** 簡訊傳送

* @param $to    接收人

* @param $model    簡訊模板id

* @param $code   簡訊驗證碼

* @return json

* @說明:有優惠,先領卷在購買,不謝!

*/function send_sms($to, $model, $code)

//簡訊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($to);  

// 必填,設定簽名名稱  

$request->setsignname($signname);  

// 必填,設定模板code  

$request->settemplatecode($templatecode);  

// 可選,設定模板引數

if($templateparam)

//發起訪問請求  

$acsresponse = $acsclient->getacsresponse($request);   

//返回請求結果  

$result = json_decode(json_encode($acsresponse),true); 

// 具體返回值參考文件:

return $result; 

}以下列舉詳細步驟:

在開始之前你必須在阿里雲控制台中將你的accesskeyid、accesskeysecret獲取並紀錄起來,如果你的賬戶沒有開啟accesskey需要進行開啟操作:

1、登入阿里雲控制台。

2、將滑鼠放在右上方的使用者名稱區域,在彈出的快捷選單中選擇accesskeys。

3、系統彈出安全提示對話方塊,單擊繼續使用accesskey。頁面顯示accesskeyid和accesskeysecret。

其次,你需要申請好對應的模板及簽名,然後在進行以下操作。

第二步:在你專案應用公共(函式)檔案common.php頭部新增

use aliyun\core\config;  

use aliyun\core\profile\defaultprofile;  

use aliyun\core\defaultacsclient;  

use aliyun\api\sms\request\v20170525\sendsmsrequest; 

第三步:將封裝好的函式寫入common.php中

/*** 簡訊傳送

* @param $to    接收人

* @param $model    簡訊模板id

* @param $code   簡訊驗證碼

* @return json

* @說明:有優惠,先領卷在購買,不謝!

*/function send_sms($to, $model, $code)

//簡訊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($to);  

// 必填,設定簽名名稱  

$request->setsignname($signname);  

// 必填,設定模板code  

$request->settemplatecode($templatecode);  

// 可選,設定模板引數

if($templateparam)

//發起訪問請求  

$acsresponse = $acsclient->getacsresponse($request);   

//返回請求結果  

$result = json_decode(json_encode($acsresponse),true); 

// 具體返回值參考文件:

return $result; 

}第四步:在你需要用到的控制器中呼叫send_sms(『**號碼』,『簡訊模板』,『需要替換的變數』),ok大功告成!

TP5 騰訊雲老版對接簡訊

傳送簡訊的方法 傳送簡訊 public function requiremes phone code else else curl請求方法 模擬post與get請求 param string url 請求位址 param string type 請求方式 post or get param bool...

tp5實現資料介面

注 以下內容均已預設配置好資料庫連線且所有表都在同一資料庫中 資料介面 model層 資料介面檔案 namespace use think db class inface 根據表名分頁查詢100條資料 public function getonehundreddata page table 根據表名...

TP5中使用阿里雲OSS

第一步 第二步 將檔案解壓在框架的vendor目錄 第三步 在繼承的公共控制器引入檔案 使用類 use oss ossclient use oss core os ception vendor aliyun oss php sdk master.autoload aliyun oss php sdk...