什么是我的代码发生的事情

时间:2017-05-03 00:40:06

标签: php

我想检查notificatins是否> 0然后有其他通知 没有可用的通知,但是如果我将状态更改为1,我的行将转到我的第二个if - else see,但我想检查看到或未读的通知数量,但是如果我像所有更改状态计数

public function websocket(){
        $data = $this->session->userdata('log');
        $user_id = $data['id'];
        $timestamp = 1493618633;
        // $entryData = array(
     //        'category' => $_POST['category'], 
     //        'title'    => $_POST['title'], 
     //        'article'  => $_POST['article'], 
     //        'when'     => time()
  //       );
        $array = $this->notification->getNotifications($timestamp, $user_id);
        if ($array > 0) {
            if (empty(array_filter(array_column($array, 'status')))) { 
                echo 'unread'; 
            }else{
                echo 'seen'; 
            }
        }else{
            $this->json(array('msg' => 'there are no notifications available'));
        }
        $context = new ZMQContext();
        $socket = $context->getSocket(ZMQ::SOCKET_PUSH, 'my pusher');
        $socket->connect("tcp://localhost:5555");
        $socket->send(json_encode('hola'));
    }

1 个答案:

答案 0 :(得分:0)

根据您的代码,您只需检查$array是否存在(由于它已在上面的行中初始化)。如果使用count($array) > 0$array.size() > 0仍然会返回不需要的结果,请在变量初始化后立即尝试快速且脏的print_r($array),以检查并确保您的通知系统不是&#39 ; t返回一个空的或格式错误的数组。