Php if循环中的特殊情况

Php if循环中的特殊情况,php,if-statement,Php,If Statement,我发现自己处于一种非常特殊的境地。问题是我试图在if循环中调用的函数不起作用。但是如果我不使用if循环调用同一个函数,它就可以正常工作$this->build($passed\u menu\u id,$id\u link)。if条件工作得非常好,因为会打印echo“Hello”。这意味着它进入循环内部,但不执行函数 这个场景运行得非常好 function Menu($passed_menu_id, $id_link) { $this->array_collection =

我发现自己处于一种非常特殊的境地。问题是我试图在if循环中调用的函数不起作用。但是如果我不使用if循环调用同一个函数,它就可以正常工作$this->build($passed\u menu\u id,$id\u link)if条件工作得非常好,因为会打印echo“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);
        }

感谢您提前抽出时间

在第二个场景中,您缺少了一个
}
:应该是

 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
按其应有的方式运行

也许构建函数中存在不符合“if”条件的内容?您可以发布生成函数代码吗?

没有if循环。代码中根本没有循环请检查第二个场景您是否尝试检查其他菜单id?假设$this->build()例如从数据库获取数据,可能没有此ID的可用数据?@Justin:这是一个if条件,而不是if循环。循环意味着不止一次地做某事。@Sutuma。。我查过了。条件正在得到满足。请将您的回音放在
生成之后,然后查看其是否相同?是,是否相同。你好,正在打印