lzh900926
新生
新生
  • UID383
  • 粉丝0
  • 关注0
  • 发帖数2
阅读:696回复:0

关于编程 设计模式

楼主#
更多 发布于:2017-06-09 16:20
求沈叔 指点  我附上代码

public function sendmessage($mobile,$page)
    {

$post_data=substr($o,0,-1);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_URL,$url);
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
        $result = curl_exec($ch);
        curl_close($ch);




        $str = explode(',',$result);
        $status_ms = $str[1];
        if($status_ms == 104){
                $redis = new Redis();
                $redis1 = $redis->connect('127.0.0.1',6379);
                $data1 = [
                        'mobile' => $mobile,
                        'message' => $page
                ];

 $data = json_encode($data1);
                $redis->lpush('error',$data);
                $this->errorms();
        }


    }


    public function errorms(){
        $redis = new Redis();
        $redis1 = $redis->connect('127.0.0.1',6379);
        $listlen = $redis->llen('error');
        for($i=0;$i<$listlen;$i++){
                $data = $redis->lpop('error');
                $data1 = json_decode($data,true);
                $mobile = $data1['mobile'];
                $mes = $data1['message'];
                $this->sendmessage($mobile,$mes);
        }


    }
    我设计的模式就是  检测返回的数据 如果是104的话  存到redis中,然后再通过errorms()这个方法取出保存的数据,再给sendmessage()方法使用  这样的话  执行代码和逻辑代码 就混为一谈了    知道这样写 不好  求沈叔指点一二!
游客

返回顶部