Php &引用;假;出现在ob_start()旁边

Php &引用;假;出现在ob_start()旁边,php,codeigniter,output-buffering,ob-start,ghosts-in-the-machine,Php,Codeigniter,Output Buffering,Ob Start,Ghosts In The Machine,我好像有鬼。我正在加载一个页面(如果有帮助的话,通常加载在另一个页面中,但是当我自己加载页面时,错误仍然会出现),在输出的顶部,在其他所有操作之前,我会得到一个随机的false 它是在$this->load->view('my_view')期间输出的。我去调查CodeIgniter系统文件,发现在\u ci\u load($\u ci\u data)方法中有一行写着ob\u start()。当我像这样在代码周围放几行字时: echo "hey!"; ob_start(); echo "here!

我好像有鬼。我正在加载一个页面(如果有帮助的话,通常加载在另一个页面中,但是当我自己加载页面时,错误仍然会出现),在输出的顶部,在其他所有操作之前,我会得到一个随机的
false

它是在
$this->load->view('my_view')期间输出的。我去调查CodeIgniter系统文件,发现在
\u ci\u load($\u ci\u data)
方法中有一行写着
ob\u start()。当我像这样在代码周围放几行字时:

echo "hey!";
ob_start();
echo "here!";
我得到的输出是
嘿!在这里

我发现阻止输出
false
的唯一方法是将另一个
ob_start()
放在代码前面的某个地方。我在控制器、视图、视图加载器以及CodeIgniter.php本身中处理了不同的位置。这里是我发现它断裂的地方:

// Is there a "remap" function? If so, we call it instead
if (method_exists($CI, '_remap'))
{
    $CI->_remap($method, array_slice($URI->rsegments, 2));
}
如果在调用
\u remap
之前放置
ob\u start()
,则
false
将消失;如果我事后纠正它,仍然会显示
false

有人知道该怎么做吗?我知道这是一个很难回答的问题,但我不知道下一步该怎么做。任何关于问题可能来自何方的建议都是非常受欢迎的


我运行的是PHP5.4.30,使用的是CodeIgniter 2.1.4(可能是更新的时候了…

结果表明,问题深入到了一个由控制器调用的另一个模型调用的模型中,当某个错误条件发生时,该模型输出了一个
false
。故事的寓意是,深入搜索我自己的代码,而不是将其归咎于框架中的一个bug…

如果
\u remap
方法输出了
false
,也许可以看看该方法的功能。我猜在某个布尔变量上调用了
echo
print
。我会更新到3.0并停止干扰系统files@AlexanderO'Mara,我查看了_remap方法,它所做的只是在我的控制器方法上调用call_user_func_数组。所以我想可能是因为我有一个旧版本的PHP,但升级到5.6并不能解决这个问题。