国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Heim php教程 PHP源碼 PHP-SMS-Schnittstellencode

PHP-SMS-Schnittstellencode

Nov 08, 2016 pm 01:25 PM

Heute hatte ich Zeit, mir den vorherigen SMS-Docking-Code anzusehen und ihn zu rekonstruieren:

https://luosimao.com/docs/api/

<?php
/**
 * User: Administrator
 * Date: 2016/5/8 0008
 * Time: 下午 2:36
 */
class Sms{
 
 
    //Luosimao api key
    private $_api_key = &#39;&#39;;
 
    private $_last_error = array();
 
 
    private $_use_ssl = FALSE;
 
    private $_ssl_api_url = array(
        &#39;send&#39;       => &#39;https://sms-api.luosimao.com/v1/send.json&#39;,
        &#39;send_batch&#39; => &#39;https://sms-api.luosimao.com/v1/send_batch.json&#39;,
        &#39;status&#39;     => &#39;https://sms-api.luosimao.com/v1/status.json&#39;,
    );
 
    private $_api_url = array(
        &#39;send&#39;       => &#39;http://sms-api.luosimao.com/v1/send.json&#39;,
        &#39;send_batch&#39; => &#39;http://sms-api.luosimao.com/v1/send_batch.json&#39;,
        &#39;status&#39;     => &#39;http://sms-api.luosimao.com/v1/status.json&#39;,
    );
 
    /**
     * @param array $param 配置參數(shù)
     * api_key api秘鑰,在luosimao短信后臺(tái)短信->觸發(fā)發(fā)送下面可查看
     * use_ssl 啟用HTTPS地址,HTTPS有一定性能損耗,可選,默認(rèn)不啟用
     */
    public function __construct( $param =  array() ){
 
        if( !isset( $param[&#39;api_key&#39;] ) ){
            die("api key error.");
        }
 
        if( isset( $param[&#39;api_key&#39;] ) ){
            $this->_api_key = $param[&#39;api_key&#39;];
        }
 
        if( isset( $param[&#39;use_ssl&#39;] ) ){
            $this->_use_ssl = $param[&#39;use_ssl&#39;];
        }
 
    }
 
    //觸發(fā),單發(fā),適用于驗(yàn)證碼,訂單觸發(fā)提醒類(lèi)
    public function send( $mobile , $message = &#39;&#39; ){
        $api_url = !$this->_use_ssl ? $this->_api_url[&#39;send&#39;] : $this->_ssl_api_url[&#39;send&#39;];
        $param = array(
            &#39;mobile&#39; => $mobile ,
            &#39;message&#39; => $message,
        );
        $res = $this->http_post( $api_url ,$param );
        return @json_decode( $res ,TRUE );
    }
 
    //批量發(fā)送,用于大批量發(fā)送
    public function send_batch( $mobile_list = array() , $message = array() , $time = &#39;&#39; ){
        $api_url = !$this->_use_ssl ? $this->_api_url[&#39;send_batch&#39;] : $this->_ssl_api_url[&#39;send_batch&#39;];
        $mobile_list = is_array( $mobile_list ) ? implode( &#39;,&#39; , $mobile_list ) : $mobile_list;
        $param = array(
            &#39;mobile_list&#39; => $mobile_list ,
            &#39;message&#39; => $message,
            &#39;time&#39;    => $time,
        );
        $res = $this->http_post( $api_url ,$param );
        return @json_decode( $res ,TRUE );
    }
 
    //獲取短信賬號(hào)余額
    public function get_deposit(){
        $api_url = !$this->_use_ssl ? $this->_api_url[&#39;status&#39;] : $this->_ssl_api_url[&#39;status&#39;];
        $res = $this->http_get( $api_url );
        return @json_decode( $res ,TRUE );
    }
 
    /**
     * @param string $type 接收類(lèi)型,用于在服務(wù)器端接收上行和發(fā)送狀態(tài),接收地址需要在luosimao后臺(tái)設(shè)置
     * @param array $param  傳入的參數(shù),從推送的url中獲取,官方文檔:https://luosimao.com/docs/api/
     */
    public function recv( $type = &#39;status&#39; , $param = array() ){
        if( $type == &#39;status&#39; ){
            if( $param[&#39;batch_id&#39;] && $param[&#39;mobile&#39;] && $param[&#39;status&#39;] ){ //狀態(tài)
                // do record
            }
        }elseif( $type == &#39;incoming&#39; ){ //上行回復(fù)
            if( $param[&#39;mobile&#39;] && $param[&#39;message&#39;] ){
                // do record
            }
        }
    }
 
    /**
     * @param string $api_url 接口地址
     * @param array $param post參數(shù)
     * @param int $timeout 超時(shí)時(shí)間
     * @return bool
     */
    private function http_post( $api_url = &#39;&#39; , $param = array() , $timeout = 5 ){
 
        if( !$api_url ){
            die("error api_url");
        }
 
        $ch = curl_init();
        curl_setopt( $ch, CURLOPT_URL, $api_url );
 
        curl_setopt( $ch, CURLOPT_HTTP_VERSION  , CURL_HTTP_VERSION_1_0 );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt( $ch, CURLOPT_HEADER, FALSE);
 
        if( parse_url( $api_url )[&#39;scheme&#39;] == &#39;https&#39; ){
            curl_setopt($ch, CURLOPT_SSL_VERIFYHOST , FALSE);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER , FALSE);
        }
 
        curl_setopt( $ch, CURLOPT_HTTPAUTH , CURLAUTH_BASIC);
        curl_setopt( $ch, CURLOPT_USERPWD  , &#39;api:key-&#39;.$this->_api_key );
        curl_setopt( $ch, CURLOPT_POST, TRUE);
        curl_setopt( $ch, CURLOPT_POSTFIELDS, $param );
 
        $res    = curl_exec( $ch );
        $error  = curl_error( $ch );
        curl_close( $ch );
        if( $error ){
            $this->_last_error[] =  $error;
            return FALSE;
        }
        return $res;
    }
 
    /**
     * @param string $api_url 接口地址
     * @param string $timeout 超時(shí)時(shí)間
     * @return bool
     */
    private function http_get( $api_url = &#39;&#39; , $timeout = &#39;&#39; ){
 
        if( !$api_url ){
            die("error api_url");
        }
 
        $ch = curl_init();
        curl_setopt( $ch, CURLOPT_URL, $api_url );
 
        curl_setopt( $ch, CURLOPT_HTTP_VERSION  , CURL_HTTP_VERSION_1_0 );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, $timeout );
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER, TRUE);
        curl_setopt( $ch, CURLOPT_HEADER, FALSE);
 
        if( parse_url( $api_url )[&#39;scheme&#39;] == &#39;https&#39; ){
            curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST , FALSE);
            curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER , FALSE);
        }
        curl_setopt( $ch, CURLOPT_HTTPAUTH , CURLAUTH_BASIC);
        curl_setopt( $ch, CURLOPT_USERPWD  , &#39;api:key-&#39;.$this->_api_key );
 
        $res    = curl_exec( $ch );
        $error  = curl_error( $ch );
        curl_close( $ch );
        if( $error ){
            $this->_last_error[] =  curl_error( $ch );
            return FALSE;
        }
        return $res;
    }
 
    public function last_error(){
        return $this->_last_error;
    }
}


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

Hei?e KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?e Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen

PHP-Tutorial
1502
276