2018-01-03 20:55:34 2577次浏览 5条回答 0 悬赏 10 金钱

小弟第一次写发送短信的代码~
拿到的接口如下:
https://abc.com/send.php?token=XXXX&sender=xxxx&message=XXXX
然后单条发送代码,经测试没问题,批量代码大致怎么写?用队列么?

$ch=curl_init();
$message="短信测试";
$message=iconv("UTF-8","GB2312",$message);
$mobile="13454318662";
$url="https://abc.com/send.php?token=XXXX&sender=".$mobile."&message=".$message;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);

$output = curl_exec($ch);

//释放curl句柄
curl_close($ch);

//打印获得的数据
if($output=="OK"){ 
echo "发送成功!";}
补充于 2018-01-09 18:45

最后采用了fsockopen

  • 回答于 2018-01-04 09:24 举报

    你不会foreach吗 孩子

    1 条回复
    回复于 2018-01-04 09:57 回复

    孩子...
    curl需要时间的,即使超时时间设置为1s,我发送个200条就要等待200s,然后你说会有什么问题产生

  • 回答于 2018-01-04 10:54 举报

    没做过相关,看你的问题大概需要多线程的方式解决,给你个参考:
    php多线程

    或者你自己搜一下 PHP多线程

  • 回答于 2018-01-04 13:48 举报

    短信接口,一般都会有批量发送的API,你仔细看文档,没找到就问短信服务商

  • 回答于 2018-01-04 15:44 举报

    用pthread 给个demo链接:http://zyan.cc/pthreads/

    觉得很赞
  • 回答于 2018-01-05 15:40 举报

    我给一个思路

    首先你现在写的代码是 单发,这个没有问题,需要的就是Loop + 单发

    数据库建一张表,每一行等于一条单发信息,包括手机号和msg以及其他code之类的

    cron写一个定时程序,30/s 运行一个php-cli 来把数据库里的全部 等待发送信息一一法出去

    当然还有一些需要注意的地方,比如如果有2-3个php-cli 如何分配资源之类的,这个都很简单,自己想一下就明白了

您需要登录后才可以回答。登录 | 立即注册
搞搞的传奇
见习主管

搞搞的传奇

注册时间:2015-02-24
最后登录:2020-06-04
在线时长:24小时46分
  • 粉丝8
  • 金钱5
  • 威望10
  • 积分345

热门问题