php使用redis的批量发送短信

来源:互联网 发布:网络攻防大赛 编辑:程序博客网 时间:2024/06/07 20:15

1.首先将需要发送信息的手机号存入redis缓存

        $redis = new \redis();        $conn = $redis->connect('localhost', 6379);        $auth = $redis->auth('*****'); //redis设置了密码,需要认证        $list = Testuser::find()->asarray()->all();        for ($i=0; $i < count($list); $i++) {             $redis->lpush('list',$list[$i]['email']);        }

将所需发送的手机号存入到redis缓存中

2.调用短信接口发送短信

        $redis = new \redis();        $conn = $redis->connect('localhost', 6379);        $auth = $redis->auth('*****');        $lenth = $redis->llen('list');        for ($i=0; $i < $lenth ; $i++) {             $phone = $redis->brpop('list',1,60);//从结尾处弹出一个值,超时时间为60s            $phonenumber = $phone[1];            $sendmsg = send($phonenumber);            if($sendmsg){                //处理发送成功的逻辑            }else{                //处理发送失败的逻辑            }            usleep(500000);//微秒,调用第三方接口,需要注意频率,        }

这里结合php的cli模式,通过函数exec触发命令。直接后台执行。

0 0
原创粉丝点击