2012-12-12 56 views
1

可能重复:
header() error not shown in php我不能看到一些PHP错误

/etc/php5/apache2/php.ini文件有一个配置:

display_errors = On 
log_errors = On 
error_reporting = E_ALL | E_STRICT 

,我可以看到类似的错误Undenifed variableParse error等,但在下一个代码中我不能看到Headers already sent错误。此外,通过Chrome的开发人员工具,我可以看到设置了标头hola: adios。 我怎么能看到这些类型的错误? 谢谢。

+2

您对自动输出缓冲,因此,没有错误.... – Wrikken

+0

@Wrikken我在php.ini中已经设置'output_buffering = Off'并重新启动Apache的,但没有什么区别。 –

+0

那么,在这种情况下,什么是phpinfo()函数在确切点说的输出缓冲器,错误报告的水平,显示错误的设置等。 ? – Wrikken

回答

0

它没有显示你的错误,因为它不是! 功能是

header(string,replace,http_response_code) 

其中字符串可以是任何你想设置为标题字段:值。没有可以使用或不能使用的列表。您始终可以拥有自定义标题字段。

检查手册 - http://php.net/manual/en/function.header.php

<?php 
header('inappropriate stuff'); 
?> 

试试这个,你不会得到在头包东西。因为PHP不能找到一个冒号“:”作为与值分开的头字段的字符串中的分隔符。

注意:如果您计划在会话中使用它,session_start()必须是在执行开始时运行的第一个函数。

+1

你错过了这一点,它不是关于头的种类,而是在调用'header'之前已经输出了html的事实。 – jeroen

+0

-1,注意你的语言。 – Charles

+0

可能是我没有得到他试图通过这个问题反映的观点。但是,这让我想知道为什么它没有显示错误。是的。输出缓冲.. –