Home > Article > Backend Development > PHP calls NetEase SMS interface to implement batch SMS sending
With the rapid development of mobile Internet, SMS marketing has become a marketing method favored by more and more enterprises. If you want to carry out SMS marketing, the first thing you need to solve is how to send batch SMS. This article will introduce how to use PHP to call the NetEase SMS interface to send batch SMS messages.
First you need to apply for NetEase SMS interface. The application address is: http://d.163.com/product/sms. When applying, you need to provide relevant information about the company or individual. After passing the review, you will receive a key (AppKey) and a password corresponding to the key (AppSecret).
After obtaining the key and password, you can use the PHP code to call it. The specific steps are as follows:
2.1 Define the function
First you need to define a function for sending text messages. The code is as follows:
<?php function sendSMS($mobiles, $templateid, $params) { // 构造请求参数 $url = "https://api.netease.im/sms/sendtemplate.action"; $data = array( "templateid" => $templateid, "mobiles" => json_encode($mobiles), "params" => json_encode($params) ); $header = array( "AppKey: YOUR_APP_KEY", "Nonce: " . uniqid(), "CurTime: " . time(), "CheckSum: " . sha1(YOUR_APP_SECRET . uniqid() . time()) ); // 发送请求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); curl_close($ch); // 返回结果 return json_decode($result, true); } ?>
Among them, $mobiles is an array of mobile phone numbers, $templateid is the SMS template ID, and $params is the SMS template parameters.
2.2 Calling the function
Wherever you need to send a text message, just call the function defined above directly. The code is as follows:
<?php $mobiles = array("13800138000", "13800138001"); // 手机号码数组 $templateid = "1"; // 短信模板ID $params = array("123456", "5分钟"); // 短信模板参数 $result = sendSMS($mobiles, $templateid, $params); // 发送短信 echo $result["code"]; // 输出结果 ?>
Among them, the $result variable is the result returned by the NetEase SMS interface. If the returned $result["code"] is 200, it means the text message was sent successfully.
When using PHP to call the NetEase SMS interface, you also need to pay attention to the following points:
3.1 $url needs to be based on your application The SMS interface address is modified.
3.2 YOUR_APP_KEY and YOUR_APP_SECRET in $header need to be replaced with the key and password you applied for.
3.3 When sending a request, the POST method must be used.
3.4 When sending a request, it needs to be constructed according to the parameters given in the SMS interface document.
Through the above introduction, we can learn how to use PHP to call the NetEase SMS interface to send batch text messages. It should be noted that when conducting SMS marketing, you also need to comply with relevant laws and regulations, and you are not allowed to send spam and illegal information.
The above is the detailed content of PHP calls NetEase SMS interface to implement batch SMS sending. For more information, please follow other related articles on the PHP Chinese website!