卓望的短信发送。PHP格式。都要不习惯用xml传输数据格式了 无 ?phpclass Sms{ private $userId = 'XXXXX'; private $password = 'XXXXXX'; private $templateId = 'XXXXXX'; /** * @var string 短信服务器地址 */ private $server_uri = 'XXXXXX'; private $p
卓望的短信发送。PHP格式。都要不习惯用xml传输数据格式了
<?php class Sms { private $userId = 'XXXXX'; private $password = 'XXXXXX'; private $templateId = 'XXXXXX'; /** * @var string 短信服务器地址 */ private $server_uri = 'XXXXXX'; private $port = 'XXXXXX'; /** * 发送短信 * @param $message 信息内容 * @param $mobile 手机号码 * @param string $signature 签名 * @return bool 成功返回true, 网络请求失败返回false, 其他返回失败编码 */ public function sendOneMsg($message, $mobile, $signature='demo') { $xml_content = $this->createXmlContent($message, $mobile, $signature); $xml = $this->sendHttpRequest(trim($xml_content)); if(! $xml) { return false; // 网络请求失败 } // 解析返回的编码 $res = simplexml_load_string($xml); if($res->retCode == 1000) { return true; } return $res->retCode; } /** * 创建 xml内容 * @param $message 信息 * @param $mobile 要发送的手机号码 * @param $signature 签名 * @return string */ private function createXmlContent($message, $mobile, $signature) { $data = array( 'userId' => $this->userId, // 账号 'password' => $this->password, // 小写的md5后的用户密码 'templateId' => $this->templateId, // 模板id 'phone' => $mobile, 'port' => $this->port, 'data' => $message, 'signature' => $signature, ); // 设置xml版本和编码 $dom = new \DOMDocument('1.0', 'UTF-8'); // 创建根节点 $request = $dom->createElement('request'); $dom->appendChild($request); foreach($data as $key => $val) { // 创建元素 $key = $dom->createElement($key); $request->appendChild($key); // 创建元素值 $text = $dom->createTextNode($val); $key->appendChild($text); } return $dom->saveXML(); } /** * 发送http请求 * @param $xml_content * @return mixed */ private function sendHttpRequest($xml_content) { $now = time(); $headers[] = 'Content-Type:text/xml'; $headers[] = 'Content-Length:' . strlen($xml_content); $headers[] = 'Cmd:mt'; $headers[] = 'TS:'. $now; $headers[] = 'Authorization:' . strtoupper(md5($xml_content. $now . $this->password)); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $this->server_uri); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_content); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); $res = curl_exec($ch); curl_close($ch); //header('Content-Type:text/html; charset=utf-8'); return $res; } }
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
刺客信條陰影:貝殼謎語解決方案
2 週前ByDDD
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版