本文主要和大家分享php使用短信宝发送短信的方法,使用短信宝需要先在官网上注册一个用户名密码,希望能帮助到大家。

注意:如果没有购买短信,则只用来测试短信速度,短信内容不可编辑,只可修改验证码数字。。

测试操作如图:

进入正题:

使用短信宝,需要一个SmsBao.class.php文件,这个文件会放在Org目录下,文件内容在最下方

调用代码:<?phpnamespace Home\Controller;use Think\Controller;use Org\Sms\SmsBao;class IndexController extends Controller { public function index(){

$sms = new SmsBao("账号", "密码");

$msg = $sms->sendSms("1537539****", "这是一个测试短信!"); if($msg['status'] == 0) { echo '发送成功!';

} else { echo '发送失败!';

} echo $sms->getBalance(); // 返回剩余条数 }

}

访问后会显示

登录短信宝,进入请求记录会看到

如果从短信宝测试入口测试,可以在手机上看到短信,然后在官网的发送记录会看到内容

回复的话,会在回复记录中看到回复的内容

附加:

SmsBao.class.php 内容<?php // +----------------------------------------------------------------------// | smsbao for thinkPHP// +----------------------------------------------------------------------// | Copyright (c) 2005 http://smsbao.com All rights reserved.// +----------------------------------------------------------------------// | Licensed ( http://smsbao.com )// +----------------------------------------------------------------------namespace Org\Sms;/** * SmsBao实现类 * @category Think * @package Think * @subpackage Sms */class SmsBao { private $account;//短信包账户 private $password;//密码 private $balance;//短信剩余条数 const sendSmsUrl = "http://api.smsbao.com/sms"; const queryBalanceUrl = "http://api.smsbao.com/query"; /** * 架构函数 * @access public * @param string $account 在短信宝注册的账户名 * @param string $password 在短信宝注册的账户名的密码 */ public function __construct($account,$password) { if (empty($account) || empty($password)) { E("用户名和密码不可为空!");

}

$this->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("\n", $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对接短信宝,php使用短信宝发送短信的方法相关推荐

  1. 微信小程序云开发,使用阿里云短信服务,搜索员工生日定期发送短信。

    相关API文档地址: 阿里云短信服务API文档地址 小程序云开发云函数正则匹配API文档地址 小程序云开发云函数定时触发器 1.登录阿里云,购买短信服务并添加签名和模板 2., 登录阿里云,鼠标放在右 ...

  2. Android实现拨打电话和发送短信,Android手机拨打电话、手动发送短信与自动拨打电话、自动发送短信(代码很简单哦)...

    Android实现手动拨打电话,即点击后跳转到手机默认电话号码输入页面,可以将相应号码传送过去: Intent intent = new Intent(Intent.ACTION_DIAL, Uri. ...

  3. qpython3h手机版怎么发短信_python如何使用腾讯云发送短信

    腾讯云方面的申请和流程都比较简单,基本都是可视化操作的,这里就不在赘述了.这篇文章着重讲解怎么用python实现调用. 我假设你已经满足了以下几个前提 + 已经开通了腾讯云短信业务 + 创建好了短信签 ...

  4. 【阿里云短信服务SMS】使用阿里云发送短信

    使用阿里云发送短信 前期准备工作 1.添加签名 2.添加短信模板 3.创建子用户,得到密钥:AccessKeyId和 AccessKeySecret 4.给子用户添加权限 5.收集好之前步骤中的4个关 ...

  5. python发短信验证码_python利用第三方模块,发送短信验证码

    对于初学者,如何利用第三方python开发包发送短信验证码,下面是具体的实现和记录过程! 环境:虚拟机上centos7平台,python3.7版本: 首先,申请账号的部分就省略了 1. 获得appid ...

  6. 小米手机 java 代码无法连接短信_小米手机无法接受和发送短信,为什么?

    展开全部 可能是以下32313133353236313431303231363533e4b893e5b19e31333363396462的几个原因: 1.手机短信存储已满  在不断地接收短信的过程中, ...

  7. linux 4g模块发送短信,OpenWRT使用4G模块上网和发送短信

    1.配置ppp 配置参考:https://blog.csdn.net/qianguozheng/article/details/50543704 结果就是:lsusb能发现HUAWEI的4G模块,if ...

  8. android 发短信意图,android代码实现打电话和发送短信功能

    android代码实现打电话和发送短信功能 发布时间:2020-05-27 11:57:17 来源:亿速云 阅读:172 作者:鸽子 1.XML布局 xmlns:app="http://sc ...

  9. PHP云软件短信接口,php调用云片网接口发送短信的实现方法

    php调用云片网接口发送短信的实现方法 云片网发送短信 /** * [SendSms description] * @param [string] $tpl_content [发送的短信内容] * @ ...

  10. php 发短信的类,[php封装类]PHP封装发送短信类!

    /** * 手机短信发送 * 需要开启 Crul * 分钟配额为:1000 次/分钟 . 超过分钟配额服务禁用. * 向同一手机号发送短信, 最小时间间隔为15 秒. * 一次最多都只能发65个汉字( ...

最新文章

  1. 从李开复的Google看管理的文化和背景
  2. 浅析基于双目视觉的自动驾驶技术
  3. canvas中的碰撞检测笔记
  4. Django Mysql SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED
  5. jquery clone 与 clone(true) 的区别
  6. 什么是URL?协议头、路径和端口是什么意思?
  7. [视频教程] 如何在Linux深度系统deepin下安装docker
  8. Angular 依赖注入的一个常见错误 NullInjectorError, No provider for XXX
  9. 【JS 逆向百例】cnki 学术翻译 AES 加密分析
  10. 公司java框架让程序员变笨_框架会使程序员变笨吗?
  11. Linux常用正则表达式
  12. 2013dgtcs 数对
  13. 华为融合位置服务器,融合服务器
  14. 北斗心脏——高精度时间频率系统
  15. 网络安全知识竞赛选择题(91-120题)
  16. TF标准模型TensorFlow Mobile for Android
  17. 孙氏太极拳--无极桩
  18. JS纯前端实现卡通人物图片的动态效果
  19. Windows装逼操作
  20. 使用夜神模拟器进行Android开发调试

热门文章

  1. CMAP HOW TO USE
  2. 开发一个APP大概需要多少钱
  3. 苹果和android 王者荣耀,王者荣耀:安卓区与苹果区谁强,官方数据说明一切,结局让人意外...
  4. 阿里python认证_集成阿里云滑动验证(python)
  5. 基于Android开发的在线考试系统(附带源码)
  6. 低功耗蓝牙BLE-Advertising State/Scanning State
  7. 距离空间,线性空间,赋范线性空间,Banach空间,内积空间,Hilbert空间的内在关系
  8. DOSBox使用debug
  9. 从底层结构开始学习FPGA(4)----MUX多路选择器(Multiplexer)
  10. vl53l1x激光测距讲解