输出缓冲仍然输出数据

时间:2015-05-14 14:15:57

标签: php output-buffering

我有一个足够简单的代码块:

ob_start();
include('api/emails/pmEmail.php');
$email = ob_get_contents();
ob_end_clean();

据我所知,这应该将数据存入我的文件,解析它,因为它是一个包含,将它存储到$ email,然后结束,所有这些都不会将其输出到浏览器。

不幸的是,它似乎不起作用。顾名思义,该文件包含一个电子邮件模板,输出,并且因为它的API部分会中断返回。我检查了我的ini文件,并将output_buffering设置为4096,这似乎是一个合理的值。我不知道我需要的其他设置或我做错了什么。这个例子在网络上存在很多次,我不知道是不是因为我输出了一个完整的HTML文件或其他东西。

1 个答案:

答案 0 :(得分:1)

其他人向我指出:

http://php.net/manual/en/function.ob-start.php#77223

我的include脚本中有一个错误没有得到输出。将它们放在一起帮助我找到了问题并解决了它。