中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php如何發送短信驗證碼

發布時間:2022-10-24 16:22:02 來源:億速云 閱讀:154 作者:iii 欄目:編程語言

這篇文章主要介紹了php如何發送短信驗證碼的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇php如何發送短信驗證碼文章都會有所收獲,下面我們一起來看看吧。

發送方法:1、實名認證并開通短信API接口服務,獲取API請求KEY;2、調用接口申請短信模板并等待審核通過;3、調用API接口,通過“function juheHttpRequest($url,$params=false,$ispost=0){...}”方式發起網絡請求,按照申請的模板發生短信到指定手機號即可。

基于PHP的驗證碼短信API接口調用示例

前期準備

  • 實名認證

根據運營商的要求,目前此接口只對實名認證的企業用戶開放使用,所以在使用之前請確保您是實名認證的企業用戶

  • 申請接口,獲取接口的調用憑證請求key

    通過 https://www.juhe.cn/docs/api/id/486?s=cpphpcn 自助申請開通接口

    可以在個人中心 ?? 數據中心 ?? 我的API 模塊看到此接口的調用憑證請求key

  • 購買數據的請求次數(免費和有贈送次數的接口可以先行調試)

  • 必須按照文檔提供的接口申請模板后,待客服審核通過后才能調用接口

特別說明

  • 請仔細閱讀官網的接口文檔,這是聚合數據與開發者的約定,它將有助于您對接口業務的理解,從而順利地開展開發工作

  • 本示例的側重點,是幫助開發者順利獲取到接口的響應數據,對于開發者的數據處理等業務邏輯,本文不會展開討論

  • 本示例旨在最大程度簡化開發者的調用步驟,沒有將功能模塊封裝為獨立的工具類,方便開發者一鍵復制后直接運行調試

  • 由于水平能力所限,示例中難免存在錯誤和疏漏,如有發現還請大家批評指正

參數說明

模板申請接口參數:

參數名必填說明
signaturetrue模板簽名(長度為2-16個中文字符),比如:公司名、產品名稱
keytrue申請的請求key
tplcodetrue可供選擇的模板id

短信發送接口參數:

參數名必填說明
mobiletrue手機號
tpl_idtrue模板id
keytrue申請的請求key
tpl_valuefalse模板變量,根據模板中變量決定,可為空

全部代碼

模板申請接口請求示例

  <?php
    // 請求的接口URL
    $apiUrl = 'http://v.juhe.cn/vercodesms/submitTpl.php?';    // 請求參數
    $params = [        // 模板簽名
        'signature' => '模板簽名(長度為2-16個中文字符),比如:公司名、產品名稱',        // 您申請的接口調用Key
        'key' => '您申請的接口調用Key',        //發送的手機號
        'tplcode' => '可供選擇的模板id',
    ];
    $paramsString = http_build_query($params);    
    // 發起接口網絡請求
    $response = null;    try {
        $response = juheHttpRequest($apiUrl, $paramsString, 1);
    } catch (Exception $e) {
        var_dump($e);        //此處根據自己的需求進行自身的異常處理
    }    if (!$response) {        echo "請求異常" . PHP_EOL;
    }
    $result = json_decode($response, true);    if (!$result) {        echo "請求異常" . PHP_EOL;
    }
    $errorCode = $result['error_code'];    if ($errorCode === 0) {
        $data = $result['result'];        echo "您申請的模板id:{$data["tplId"]}" . PHP_EOL;
    } else {        // 請求異常
        echo "請求異常:{$errorCode}_{$result["reason"]}" . PHP_EOL;
    }    
    /**
     * 發起網絡請求函數
     * @param string $url 請求的URL
     * @param bool $params 請求的參數內容
     * @param int $ispost 是否POST請求
     * @return bool|string 返回內容
     */
    function juheHttpRequest($url, $params = false, $ispost = 0)    {
        $httpInfo = [];
        $ch = curl_init();
    
        curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36');
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
        curl_setopt($ch, CURLOPT_TIMEOUT, 12);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);        if ($ispost) {
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
            curl_setopt($ch, CURLOPT_URL, $url);
        } else {            if ($params) {
                curl_setopt($ch, CURLOPT_URL, $url . '?' . $params);
            } else {
                curl_setopt($ch, CURLOPT_URL, $url);
            }
        }
        $response = curl_exec($ch);        if ($response === FALSE) {            // echo "cURL Error: ".curl_error($ch);
            return false;
        }
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        $httpInfo = array_merge($httpInfo, curl_getinfo($ch));
        curl_close($ch);        return $response;
    }

短信發送接口請求示例

    <?php
    // 請求的接口URL
    $apiUrl = 'http://v.juhe.cn/vercodesms/send?';
    // 請求參數
    $params = [
        // 模板id
        'tplId' => '模板id',
        // 您申請的接口調用Key
        'key' => '您申請的接口調用Key',
        //發送的手機號
        'mobile' => '發送的手機號',
        //結合自己的模板中的變量進行設置,如果沒有變量,可以刪除此參數
        'tplValue' => urlencode('#total#=1000&#used#=100&#balance#=900'),
    ];
    $paramsString = http_build_query($params);
    
    // 發起接口網絡請求
    $response = null;
    try {
        $response = juheHttpRequest($apiUrl, $paramsString, 1);
    } catch (Exception $e) {
        var_dump($e);
        //此處根據自己的需求進行自身的異常處理
    }
    if (!$response) {
        echo "請求異常" . PHP_EOL;
    }
    $result = json_decode($response, true);
    if (!$result) {
        echo "請求異常" . PHP_EOL;
    }
    $errorCode = $result['error_code'];
    if ($errorCode === 0) {
        $data = $result['result'];
        echo "請求唯一標示:{$data["sid"]}" . PHP_EOL;
    } else {
        // 請求異常
        echo "請求異常:{$errorCode}_{$result["reason"]}" . PHP_EOL;
    }
    
    /**
     * 發起網絡請求函數
     * @param string $url 請求的URL
     * @param bool $params 請求的參數內容
     * @param int $ispost 是否POST請求
     * @return bool|string 返回內容
     */
    function juheHttpRequest($url, $params = false, $ispost = 0)
    {
        $httpInfo = [];
        $ch = curl_init();
    
        curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
        curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36');
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
        curl_setopt($ch, CURLOPT_TIMEOUT, 12);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        if ($ispost) {
            curl_setopt($ch, CURLOPT_POST, true);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
            curl_setopt($ch, CURLOPT_URL, $url);
        } else {
            if ($params) {
                curl_setopt($ch, CURLOPT_URL, $url . '?' . $params);
            } else {
                curl_setopt($ch, CURLOPT_URL, $url);
            }
        }
        $response = curl_exec($ch);
        if ($response === FALSE) {
            // echo "cURL Error: ".curl_error($ch);
            return false;
        }
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        $httpInfo = array_merge($httpInfo, curl_getinfo($ch));
        curl_close($ch);
        return $response;
    }

運行結果

php如何發送短信驗證碼

php如何發送短信驗證碼

關于“php如何發送短信驗證碼”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“php如何發送短信驗證碼”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

甘孜| 安塞县| 集安市| 郧西县| 霞浦县| 互助| 台北市| 临潭县| 沙洋县| 舒城县| 璧山县| 鄂托克旗| 井研县| 嘉善县| 德阳市| 报价| 长乐市| 汤原县| 邵阳县| 元阳县| 伽师县| 石家庄市| 澄城县| 芒康县| 通江县| 湖北省| 闸北区| 海城市| 秦安县| 陆河县| 佳木斯市| 湘乡市| 晋州市| 白朗县| 东兰县| 肇州县| 拉孜县| 牡丹江市| 嘉义市| 香河县| 三门峡市|