Heim > Backend-Entwicklung > PHP-Tutorial > Beispiel für eine PHP-Anfrage der SMS-API-Dienstschnittstelle für aggregierte Daten (Quellcode im Anhang)

Beispiel für eine PHP-Anfrage der SMS-API-Dienstschnittstelle für aggregierte Daten (Quellcode im Anhang)

angryTom
Freigeben: 2023-04-07 15:46:02
nach vorne
4473 Leute haben es durchsucht

Bevor Sie es verwenden können, benötigen Sie:

①: Beantragen Sie den SMS-API-Dienst über http://www.juhe.cn/docs/api/id/54

②: Fügen Sie im SMS-Vorlagencenter eine Vorlage hinzu und bestehen Sie die Überprüfung

1. Aggregierte Daten (www.juhe.cn) SMS-API-Dienstschnittstelle PHP fordert Beispielquellcode an

<?php
 
header(&#39;content-type:text/html;charset=utf-8&#39;);
class SendCode
{
    private $key;
    private $tpl_id;
    public function __construct()
    {
        $this->key = &#39;AppKey&#39;;  // 聚合数据后台的AppKey
        $this->tpl_id = &#39;tpl_id&#39;;    // 申请的短信模板ID,根据实际情况修改短信模板
    }
    public function send($mobile){
 
        if (empty($mobile)) {
            $this->show_json(-4,&#39;手机号不能为空&#39;);
        }
 
        $code = mt_rand(100000,999999);
        $sendUrl = &#39;http://v.juhe.cn/sms/send&#39;; //短信接口的URL
        $smsConf = array(
            &#39;key&#39;   => $this->key, //您申请的APPKEY
            &#39;mobile&#39;    => $mobile, //接受短信的用户手机号码
            &#39;tpl_id&#39;    => $this->tpl_id, //您申请的短信模板ID,根据实际情况修改
            &#39;tpl_value&#39; =>&#39;#code#=&#39;.$code.&#39;&#company#=聚合数据&#39; //您设置的模板变量,根据实际情况修改
        );
 
        $content = $this->juhecurl($sendUrl,$smsConf, 1); //请求发送短信
        if($content){
            $result = json_decode($content,true);
            $error_code = $result[&#39;error_code&#39;];
            if($error_code == 0){
                //状态为0,说明短信发送成功
                $data[&#39;code&#39;] = $code;
                $this->show_json(1, $data);
            }else{
                //状态非0,说明失败
                $msg = $result[&#39;reason&#39;];
                $this->show_json(-3, "短信发送失败(".$error_code."):".$msg);
            }
        }else{
            //返回内容异常,以下可根据业务逻辑自行修改
            $this->show_json(-3, &#39;请求发送短信失败&#39;);
        }
 
    }
 
    /**
     * 请求接口返回内容
     * @param  string $url [请求的URL地址]
     * @param  string $params [请求的参数]
     * @param  int $ipost [是否采用POST形式]
     * @return  string
     */
    public function juhecurl($url,$params=false,$ispost=0){
 
        $httpInfo = array();
        $ch = curl_init();
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt( $ch, CURLOPT_USERAGENT , &#39;Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22&#39; );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 30 );
        curl_setopt( $ch, CURLOPT_TIMEOUT , 30);
        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.&#39;?&#39;.$params );
            }else{
                curl_setopt( $ch , CURLOPT_URL , $url);
            }
        }
        $response = curl_exec( $ch );
        if ($response === FALSE) {
            return false;
        }
        $httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );
        $httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
        curl_close( $ch );
        return $response;
 
    }
 
 
    public function show_json($status = 1, $return = NULL) {
 
        $ret = array(&#39;status&#39; => $status);
 
        if (!is_array($return)) {
            if ($return) {
                $ret[&#39;result&#39;][&#39;message&#39;] = $return;
            }
 
            exit(json_encode($ret));
        } else {
            $ret[&#39;result&#39;] = $return;
        }
 
        exit(json_encode($ret));
    }
 
 
 
}
Nach dem Login kopieren

2. Aufrufbeispiel

<?php
$send = new SendCode();
$send->send(15113993183);
Nach dem Login kopieren

3. Der Rückgabestatus ist 1, wenn erfolgreich

Beispiel für eine PHP-Anfrage der SMS-API-Dienstschnittstelle für aggregierte Daten (Quellcode im Anhang)

Weitere PHP-bezogene Kenntnisse finden Sie auf der PHP-Chinese-Website!

Das obige ist der detaillierte Inhalt vonBeispiel für eine PHP-Anfrage der SMS-API-Dienstschnittstelle für aggregierte Daten (Quellcode im Anhang). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:www.whmblog.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage