0

谁能解释为什么以下脚本在两个不同平台上的行为不同?

脚本:

<?php

echo "hello!";

$view_content = ob_get_clean();

echo "'".gettype($view_content)."' >".$view_content."<";

输出 1(在 WampServer 2i - php v5.3.0 - Windows 7 x64 上):

'string' >hello!<

输出 2(在 MAMP 1.9 - php v5.3.2 - OSX 10.6.4 上):

hello!'boolean' ><

似乎 MAMP 没有正确执行函数“ob_get_clean()”。我还在 MAMP 上尝试了 v5.2.13 的 php 并看到了同样的问题。

我意识到这些是 php 的不同“版本”,但我觉得这应该可行。是否有我缺少的扩展/模块?

4

1 回答 1

2

可能在 1 台主机上,自动输出缓冲已打开。我建议不要这样做,因为它占用了大部分时间不需要的资源。如果您依赖它,您可以使用和设置它,恕我直言,更好的方法是ob_start()真正需要时调用。

手册

返回值
返回输出缓冲区的内容并结束输出缓冲。如果输出缓冲未激活,则返回 FALSE。

于 2010-10-04T17:58:50.303 回答