本文主要和大家分享php使用短信宝发送短信的方法,使用短信宝需要先在官网上注册一个用户名密码,希望能帮助到大家。
注意:如果没有购买短信,则只用来测试短信速度,短信内容不可编辑,只可修改验证码数字。。
测试操作如图:
进入正题:
使用短信宝,需要一个SmsBao.class.php文件,这个文件会放在Org目录下,文件内容在最下方
调用代码:
sendSms("1537539****", "这是一个测试短信!"); if($msg['status'] == 0) { echo '发送成功!'; } else { echo '发送失败!'; } echo $sms->getBalance(); // 返回剩余条数 }}
登录后复制
访问后会显示
立即学习“PHP免费学习笔记(深入)”;
登录短信宝,进入请求记录会看到
如果从短信宝测试入口测试,可以在手机上看到短信,然后在官网的发送记录会看到内容
回复的话,会在回复记录中看到回复的内容
附加:
SmsBao.class.php 内容
account = $account; $this->password = $password; } /** * 发送短信函数 * @access public * @param string $mobile 手机号,多个手机号用英文逗号分隔 * @param string $content 发送内容 * @return array 返回值为数组,其中status为0表明发送成功,其他情况下发送失败,失败原因为msg */ public function sendSms($mobile,$content){ $param['u'] = $this->account; $param['p'] = md5($this->password); $param['m'] = $mobile; $param['c'] = $content; $ret = self::http(self::sendSmsUrl, $param); $data['status'] = $ret; $data['msg'] = $ret == 0 ?'发送成功' : self::getResult($ret); return $data; } /** * 获取短信剩余条数函数 * @access public */ public function getBalance(){ $param['u'] = $this->account; $param['p'] = md5($this->password); $ret = self::http(self::queryBalanceUrl, $param); $retArr = split("", $ret); $balanceArr = split(",", $retArr[1]); $this->balance = $retArr[0] == 0 ? $balanceArr[1] : self::getResult($ret); return $this->balance; } /** * 发送http请求 * @access protected * @param string $url 请求地址 * @param string $param get方式请求内容,数组形式,post方式时无效 * * @param string $data post请求方式时的内容,get方式时无效 * @param string $method 请求方式,默认get */ protected static function http($url, $param, $data = '', $method = 'GET'){ $opts = array( CURLOPT_TIMEOUT => 30, CURLOPT_RETURNTRANSFER => 1, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_SSL_VERIFYHOST => false, ); /* 根据请求类型设置特定参数 */ $opts[CURLOPT_URL] = $url . '?' . http_build_query($param); if(strtoupper($method) == 'POST'){ $opts[CURLOPT_POST] = 1; $opts[CURLOPT_POSTFIELDS] = $data; if(is_string($data)){ //发送JSON数据 $opts[CURLOPT_HTTPHEADER] = array( 'Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen($data), ); } } /* 初始化并执行curl请求 */ $ch = curl_init(); curl_setopt_array($ch, $opts); $data = curl_exec($ch); $error = curl_error($ch); curl_close($ch); //发生错误,抛出异常 if($error) throw new Exception('请求发生错误:' . $error); return $data; } private function getResult($key){ $rst['30'] = '密码错误'; $rst['40'] = '账号不存在'; $rst['41'] = '余额不足'; $rst['42'] = '帐号过期'; $rst['43'] = 'IP地址限制'; $rst['50'] = '内容含有敏感词'; $rst['51'] = '手机号码不正确'; return $rst[$key]; }}
登录后复制
以上就是php使用短信宝发送短信的方法的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2781666.html