- 开发引导
- 接入指南
- 调用说明
- 常见问题
- APi文档
- 发送短信
- 查询余额
- 回复短信查询
- 回执报告查询
- 回执推送
- 回复推送
- 代码示例
- PHP
- JAVA
- ASP
- Delphi7
- C#
- 短信插件
- dedecms5.7
- phpcms v9
- discuz3.2
- 短信状态码
- 测试模板
代码示例
<?php
// ① 该代码仅供接入顶信短信接口参考使用,客户可根据实际需要自行编写; // ② 支持发送验证码短信、触发通知短信等; // ③ 测试验证码短信、通知短信,请用默认的测试模板,默认模板详见接口文档。
class SendUtility { private $_config = array(); /** * 获取相关配置 * Config.php文件中的乐信用户名、密码、签名 */ public __construct($config) { $this->_config = $config; } /** * 拼接请求参数 */ function BuildContent($AimMobiles, $Content) { $str = "accName=" . urlencode($this->_config["UserName"]); $str .= "&accPwd=" . urlencode(strtoupper(md5($this->_config["Password"]))); $str .= "&aimcodes=" . urlencode($AimMobiles); $str .= "&content=" . urlencode($Content . $this->_config["Signature"]); return $str; } /** * 短信发送 * @param $AimMobiles 下行手机号 * @param $Content 短信内容 */ function Send($AimMobiles, $Content) { $content = $this->BuildContent($AimMobiles, $Content); $counter = 0; while ($counter < count($this->_config["Addresses"])) { $opts = array('http' => array("method" => "POST", "timeout" => $this->_config["HttpTimeout"], "header" => "Content-type: application/x-www-form-urlencoded", "content" => $content)); $message = file_get_contents($this->_config["Addresses"]$this->getVar('counter') . "/send", false, stream_context_create($opts)); if ($message == false) $counter++; else break; } if ($message == false) return "发送失败"; $RtnString = explode(";", $message); if ($RtnString[0] != "1") return $RtnString[1]; return $RtnString[0]; } /** * 余额查询 * @param $accName 用户名 * @param $accPwd 密码 */ function Query() { $content = "accName=" . urlencode($this->_config["UserName"]); $content .= "&accPwd=" . urlencode(strtoupper(md5($this->_config["Password"]))); $opts = array('http' => array("method" => "POST", "header" => "Content-type: application/x-www-form-urlencoded", "content" => $content)); $message = file_get_contents($this->_config["Addresses"][0] . "/qryBalance", false, stream_context_create($opts)); if ($message == false) return "查询失败"; $RtnString = explode(";", $message); if ($RtnString[0] != "1") return $RtnString[1]; return $RtnString[2]; } }