if循环内部的特殊情况

时间:2013-05-21 09:44:39

标签: php if-statement

我发现自己处于一种非常特殊的境地。问题是我试图在if循环中调用的函数不起作用。但如果我在没有if循环的情况下调用相同的函数,它可以正常工作。 $ this-> build($ passed_menu_id,$ id_link); if 条件非常正常,因为回显“Hello”被打印出来。这意味着它进入循环但不执行该函数。

此场景工作正常

function Menu($passed_menu_id, $id_link) {
        $this->array_collection = array();
        $this->menu_collection = array();
        $this->menu_id = $this->_pickMenuId($passed_menu_id);
        $this->build($passed_menu_id, $id_link);
        }

此方案无效

 function Menu($passed_menu_id, $id_link) {
        $this->array_collection = array();
        $this->menu_collection = array();
        $this->menu_id = $this->_pickMenuId($passed_menu_id);
        if($this->menu_id==1003){
            echo "Hello";
            $this->build($passed_menu_id, $id_link);
        }

感谢您提前的时间

2 个答案:

答案 0 :(得分:1)

在你的第二个场景中,你错过了}:它应该是

 function Menu($passed_menu_id, $id_link) {
        $this->array_collection = array();
        $this->menu_collection = array();
        $this->menu_id = $this->_pickMenuId($passed_menu_id);
        if($this->menu_id==1003){
            echo "Hello";
            $this->build($passed_menu_id, $id_link);
        }  // This is missing
        }  

除此之外,代码中没有任何内容可以阻止if以其应该的方式运行

答案 1 :(得分:0)

也许构建函数中有一些东西不符合“if”条件?你可以发布构建功能代码吗?