PHP ob_get_contents为空

PHP ob_get_contents is empty

提问人:mikeruss 提问时间:7/15/2021 更新时间:7/17/2021 访问量:137

问:

我正在使用 ob_start() 和 ob_get_contents() 来设置缓存。它在我的 Windows 桌面测试机上一切正常,但是当我在实时主机上运行它时,ob_get_contents() 是空的。打印数据来自一系列 php 包含。当我不调用includes时,只需直接添加html输出,它适用于实时主机,因此与缓冲区本身无关。输出为20K左右。

所以我猜它与主机设置有关。

我不知道从哪里开始寻找,谁能为我指出正确的方向。

缓存代码不包含在其标准内容中,如果直接包含输出而不是受制于一系列 PHP 包含,它可以正常工作。

谢谢!!

PHP 缓存 ob-get-contents

评论


答:

0赞 mikeruss 7/17/2021 #1

嗯,这很奇怪。我将缓存创建代码移动到页面创建的稍晚阶段,一切正常。我的代码中一定有一些东西正在清空缓冲区。反正现在很开心!