PHP 5.3 - 排除500错误 - 调试 - 解析错误

时间:2011-12-19 16:24:54

标签: php oop debugging phpstorm

偶尔我会有一些格式错误的PHP代码,我会得到500错误。我在Windows 7笔记本电脑上运行Apache 2.2。作为IDE,我已经开始使用PhpStorm。

捕获这些错误并获知行号的最佳方法是什么? 为什么与OOP相关的语法错误会导致500错误,而函数问题往往会返回正常错误?

语法错误的示例:从具有单个冒号而不是两个冒号的类调用静态方法。

更新: 请参阅接受的答案和所有评论。

1 个答案:

答案 0 :(得分:13)

当遇到致命错误时,PHP将以“500”响应,例如E_PARSEE_ERROR和未捕获的异常。 500是“内部服务器错误”的HTTP响应代码 - 处理请求时发生了不可恢复的事情。

在php.ini中,在开发计算机上,您应该将error_reporting级别设置为(至少)E_NOTICE - 最好是E_ALL - 并确保display_errors是的。这将在浏览器中显示错误消息,包括“500”错误。

您还可以检查Apache错误日志,只要在php.ini中启用了log_errors,就会在那里列出错误。默认情况下,这将是<apache_ServerRoot>\logs\error.log

您还可以使用ini_set()error_reporting()

在运行时控制所有这些内容