我经常会尝试运行PHP脚本,然后返回黑屏。没有错误信息;只是一个空白的屏幕。原因可能是简单的语法错误(括号错误,分号丢失),函数调用失败或完全是其他原因。
弄清楚出了什么问题是非常困难的。我最终注释掉了代码,在各处输入“ echo”语句,等等,试图缩小问题的范围。但是肯定有更好的方法吧?
有没有办法像Java一样使PHP产生有用的错误消息?
对于语法错误,您需要在php.ini中启用错误显示。默认情况下,这些功能是关闭的,因为您不希望“客户”看到错误消息。请查看PHP文档中的此页面,以获取有关2个指令的信息:error_reporting和display_errors。display_errors可能是您要更改的一种。如果您无法修改php.ini,也可以将以下行添加到.htaccess文件中:
error_reporting
display_errors
php_flag display_errors on php_value error_reporting 2039
您可能要考虑将E_ALL的值(如Gumbo所述)用于您的PHP版本,error_reporting以获取所有错误。 其他3个项目:(1)您可以检查错误日志文件,因为它将包含所有错误(除非已禁用日志记录)。(2)添加以下两行将帮助您调试不是语法错误的错误:
error_reporting(-1); ini_set('display_errors', 'On');
(3)另一个选择是使用编辑器,例如PhpEd,在键入时检查错误。PhpEd还带有调试器,该调试器可以提供更多详细信息。(PhpEd调试器与xdebug非常相似,并且直接集成到编辑器中,因此您可以使用1个程序来完成所有工作。)