一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - PHP教程 - php短信接口代碼

php短信接口代碼

2021-01-18 14:09取個名字想半天 PHP教程

這篇文章主要為大家詳細(xì)介紹了php短信接口代碼,php短信發(fā)送、php批量發(fā)送、php獲取余額等代碼,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了幾個常用的php短信接口代碼,供大家參考,具體內(nèi)容如下

1. 短信調(diào)用class    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<?php
/**
 * User: Administrator
 * Date: 2016/5/8 0008
 * Time: 下午 2:36
 */
class Sms{
 
 
  //Luosimao api key
  private $_api_key = '';
 
  private $_last_error = array();
 
 
  private $_use_ssl = FALSE;
 
  private $_ssl_api_url = array(
    'send'    => 'http://www.ythuaji.com.cn/v1/send.json',
    'send_batch' => 'http://www.ythuaji.com.cn/v1/send_batch.json',
    'status'   => 'http://www.ythuaji.com.cn/v1/status.json',
  );
 
  private $_api_url = array(
    'send'    => 'http://www.ythuaji.com.cn/v1/send.json',
    'send_batch' => 'http://www.ythuaji.com.cn/send_batch.json',
    'status'   => 'http://www.ythuaji.com.cn/v1/status.json',
  );
 
  /**
   * @param array $param 配置參數(shù)
   * api_key api秘鑰,在luosimao短信后臺短信->觸發(fā)發(fā)送下面可查看
   * use_ssl 啟用HTTPS地址,HTTPS有一定性能損耗,可選,默認(rèn)不啟用
   */
  public function __construct( $param = array() ){
 
    if( !isset( $param['api_key'] ) ){
      die("api key error.");
    }
 
    if( isset( $param['api_key'] ) ){
      $this->_api_key = $param['api_key'];
    }
 
    if( isset( $param['use_ssl'] ) ){
      $this->_use_ssl = $param['use_ssl'];
    }
 
  }
 
  //觸發(fā),單發(fā),適用于驗(yàn)證碼,訂單觸發(fā)提醒類
  public function send( $mobile , $message = '' ){
    $api_url = !$this->_use_ssl ? $this->_api_url['send'] : $this->_ssl_api_url['send'];
    $param = array(
      'mobile' => $mobile ,
      'message' => $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 = '' ){
    $api_url = !$this->_use_ssl ? $this->_api_url['send_batch'] : $this->_ssl_api_url['send_batch'];
    $mobile_list = is_array( $mobile_list ) ? implode( ',' , $mobile_list ) : $mobile_list;
    $param = array(
      'mobile_list' => $mobile_list ,
      'message' => $message,
      'time'  => $time,
    );
    $res = $this->http_post( $api_url ,$param );
    return @json_decode( $res ,TRUE );
  }
 
  //獲取短信賬號余額
  public function get_deposit(){
    $api_url = !$this->_use_ssl ? $this->_api_url['status'] : $this->_ssl_api_url['status'];
    $res = $this->http_get( $api_url );
    return @json_decode( $res ,TRUE );
  }
 
  /**
   * @param string $type 接收類型,用于在服務(wù)器端接收上行和發(fā)送狀態(tài),接收地址需要在luosimao后臺設(shè)置
   * @param array $param 傳入的參數(shù),從推送的url中獲取,官方文檔:https://luosimao.com/docs/api/
   */
  public function recv( $type = 'status' , $param = array() ){
    if( $type == 'status' ){
      if( $param['batch_id'] && $param['mobile'] && $param['status'] ){ //狀態(tài)
        // do record
      }
    }elseif( $type == 'incoming' ){ //上行回復(fù)
      if( $param['mobile'] && $param['message'] ){
        // do record
      }
    }
  }
 
  /**
   * @param string $api_url 接口地址
   * @param array $param post參數(shù)
   * @param int $timeout 超時時間
   * @return bool
   */
  private function http_post( $api_url = '' , $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 )['scheme'] == 'https' ){
      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 , 'api:key-'.$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 超時時間
   * @return bool
   */
  private function http_get( $api_url = '' , $timeout = '' ){
 
    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 )['scheme'] == 'https' ){
      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 , 'api:key-'.$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;
  }
}

2.短信發(fā)送示例    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//send 單發(fā)接口
 
require 'sms.php';
$sms = new Sms( array('api_key' => '86f52f3ce0647dc24da53eafe29fadd4' , 'use_ssl' => FALSE ) );
$res = $sms->send_batch( array('13761428268') , '驗(yàn)證碼:19272【服務(wù)器之家】');
if( $res ){
  if( isset( $res['error'] ) && $res['error'] == 0 ){
    echo 'success';
  }else{
    echo 'failed,code:'.$res['error'].',msg:'.$res['msg'];
  }
}else{
  var_dump( $sms->last_error() );
}
exit;


3.批量發(fā)送示例    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
require 'sms.php';
$sms = new Sms( array('api_key' => '86f52f3ce0647dc24da53eafe29fadd4' , 'use_ssl' => FALSE ) );
 
 
//send 單發(fā)接口
$res = $sms->send_batch( array('13761428268') , '驗(yàn)證碼:19272【服務(wù)器之家】');
if( $res ){
  if( isset( $res['error'] ) && $res['error'] == 0 ){
    echo 'success';
  }else{
    echo 'failed,code:'.$res['error'].',msg:'.$res['msg'];
  }
}else{
  var_dump( $sms->last_error() );
}
exit;

4.獲取余額示例    

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//deposit 余額查詢
require 'sms.php';
$sms = new Sms( array('api_key' => '86f52f3ce0647dc24da53eafe29fadd4' , 'use_ssl' => FALSE ) );
 
$res = $sms->get_deposit();
if( $res ){
  if( isset( $res['error'] ) && $res['error'] == 0 ){
    echo 'desposit:'.$res['deposit'];
  }else{
    echo 'failed,code:'.$res['error'].',msg:'.$res['msg'];
  }
}else{
  var_dump( $sms->last_error() );
}
exit;

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美高清在线 | 爱色综合v | 日韩在线观看一区二区不卡视频 | 91精品免费国产高清在线 | 我年轻漂亮的继坶2中字在线播放 | 91欧美秘密入口 | 成人性色生活片免费网 | 91日本在线观看亚洲精品 | 欧美另类z0zxi | 四虎影视永久免费视频观看 | 美女机机对机机的视频(免费) | 欧美专区亚洲 | 欧美一区二区三区四区视频 | 夫妻性生活免费在线观看 | 办公室操秘书 | 男人肌肌捅女人 | 动漫美女胸被狂揉扒开吃奶动态图 | kk4kk免费毛片 | 艾秋麻豆果冻剧传媒在线播放 | 校花的第一次好紧好爽 | 国产福利不卡一区二区三区 | 国产精品九九久久一区hh | 亚洲色图影院 | 免费视频片在线观看大片 | 亚洲精品二三区伊人久久 | 亚洲高清在线天堂精品 | 免费看一级大片 | 久久免费看少妇级毛片蜜臀 | 好姑娘在线视频观看免费 | 欧美jjvideo | 午夜在线观看视频 | 欧美日韩国产一区二区三区在线观看 | 欧美日韩中文字幕在线视频 | 好涨好爽好大视频免费 | 国产二区视频 | 99九九精品免费视频观看 | 欧美日韩一区二区三区免费不卡 | 手机跑分排行最新排名 | 国内精品免费一区二区三区 | 好大好硬好深好爽gif图 | 日韩欧美一区二区三区四区 |