很多站长朋友们都不太清楚PHP发送短信借口,今天小编就来给大家整理PHP发送短信借口,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP+MYSQL 实现队列 进行发送短信怎么做 2、 php 怎么写短信接口 3、 php怎么发送手机短信? 4、 php如何调用api接口,主要是php调用联通,移动api进行短信的发送? PHP+MYSQL 实现队列 进行发送短信怎么做最近遇到一个批量发送短信的需求,短信接口是第三方提供的。刚开始想到,获取到手机号之后,循环调用接口发送不就可以了吗?
但很快发现问题:当短信数量很大时,不仅耗时,而且成功率很低。
于是想到,用PHP和MySQL实现一个消息队列,一条一条的发送短信。下面介绍具体的实现方法:
首先,建立一个数据表sms,包含以下字段:
id,
phone, //手机号
content //短信内容
将需要发送的短信和手机号存入sms表中。
接下来,需要用PHP实现一个定时器,定时读取一条记录,并发送短信:
<?php
$db = new Db();
$sms = new Sms();
while(true){
$item = $db->getFirstRecord(); //获取数据表第一条记录
if(!$item){
//如果队列中没有数据,则结束定时器
break;
}
$res = $sms->send($item['phone'],$item['content']); //发送短信
if($res){
$db->deleteFristRecord(); //删除发送成功的记录
echo $item['phone'].'发送成功';
}else{
echo $item['phone'].'发送失败,稍后继续尝试';
}
sleep(10); //每隔十秒循环一次
}
echo '发送完毕!';
?>
将代码保存为timer_sms.php,打开命令行,执行定时器:
php timer_sms.php
好了,php定时器将会根据设定的时间间隔(这里设的是10秒),自动完成发送短信的任务。任务完成后将自动退出定时器,不再占用服务器资源。
根据我的测试,PHP定时器占用资源并不多,不会对服务器造成压力。而且是异步访问数据库,也不会影响数据库的运行。
这种方式的优点是:
1、后台运行,前台无需等待
2、成功率高,失败的记录会自动重发,直到成功
php 怎么写短信接口首先你要了解一下短信的发送方式
其实 接口 都是一种规定好了的函数,你把调用这个函数的规则写好,这就是接口了;
你把接口给你的客户,客户通过一些参数来请求这个函数,客户通过json或xml发送请求字符串给你,你接收道字符串后,通过你事先定好的规则,把这个字符串解析出来,验证是否是正确的,正确你就执行客户传过来的电话号码和短信内容,通过你的平台发送内容,没通过就返回错误信息。
php怎么发送手机短信?我已经申请成为移动SP。 移动给我以下资料: 企业代码: 服务代码: 短信网关IP地址: 登陆用户名: 密码: 下行端口: 上行端口: 协议:见附件 请问我怎么用PHP写往手机发短信的代码?
php如何调用api接口,主要是php调用联通,移动api进行短信的发送?他会提供相应接口给你的,具体调用方法就相当于讲求某个链接。
如:
;type=json
在这里operate.php相当于一个接口,其中get_user_list 是一个API(获取用户列表),讲求返回的数据类型为JSON格式。
你只需要在你PHP代码中执行这条链接他就会返回。
GET方式的直接使用
$file_contents = file_get_content(';type=json')
POST方式得用下面的(需要开启PHP curl支持)。
$url = ';type=json';
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $url );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_CONNECTTIMEOUT, 10 );
curl_setopt ( $ch, CURLOPT_POST, 1 ); //启用POST提交
$file_contents = curl_exec ( $ch );
curl_close ( $ch );
关于PHP发送短信借口的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于PHP发送短信借口 php发送请求的详细内容...