可能重复:
PHP:如何知道输出是否已经开始?
在开始会话之前,我想知道缓冲区中是否已经生成了输出。
在 PHP 中,在会话开始之前开始的输出总是会产生警告,例如控制器中的错误会产生以下输出:
警告:fopen(/tmp/test.txt)[function.fopen]:无法打开流:第 836 行 /var/www/app/controllers/test_controller.php 中的权限被拒绝
警告:无法修改标头信息 - 第 18 行的 layouts/default.thtml 中的标头已由(输出开始于 test.php:836)发送
这不是问题,我喜欢这个警告,所以我发现了一些错误。
但是我的布局是这样设计的,页面顶部有一个固定栏,覆盖了第一个警告。所以我想在开始会话之前确定缓冲区中是否已经生成了输出,所以我可以退出添加固定到该栏的样式。