我经常会尝试运行一个 PHP 脚本,然后返回一个空白屏幕。没有错误信息;只是一个空的屏幕。原因可能是一个简单的语法错误(错误的括号,缺少分号),或者一个失败的函数调用,或者完全是其他的东西。
很难弄清楚出了什么问题。我最终注释掉了代码,到处输入“echo”语句,等等,试图缩小问题的范围。但肯定有更好的方法,对吧?
有没有办法让 PHP 产生有用的错误消息,就像 Java 一样?
原文由 Candidasa 发布,翻译遵循 CC BY-SA 4.0 许可协议
我经常会尝试运行一个 PHP 脚本,然后返回一个空白屏幕。没有错误信息;只是一个空的屏幕。原因可能是一个简单的语法错误(错误的括号,缺少分号),或者一个失败的函数调用,或者完全是其他的东西。
很难弄清楚出了什么问题。我最终注释掉了代码,到处输入“echo”语句,等等,试图缩小问题的范围。但肯定有更好的方法,对吧?
有没有办法让 PHP 产生有用的错误消息,就像 Java 一样?
原文由 Candidasa 发布,翻译遵循 CC BY-SA 4.0 许可协议
我像这样解决了我的整个 500 问题:
A.检查php.ini参数
B. 更新 IIS 管理器参数
在这一步中,您会收到 500 个这样的错误,并且没有加载 html。
在这一步中,您可以看到包含这样的 php 错误的 html 页面。
并做了 :)
原文由 Saghachi 发布,翻译遵循 CC BY-SA 4.0 许可协议
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答715 阅读✓ 已解决
2 回答2.3k 阅读
2 回答648 阅读✓ 已解决
对于语法错误,您需要在 php.ini 中启用错误显示。默认情况下,这些是关闭的,因为您不希望“客户”看到错误消息。 查看 PHP 文档中的此页面 以获取有关 2 个指令的信息:
error_reporting
和display_errors
。display_errors
可能是您要更改的那个。如果无法修改 php.ini,还可以在 .htaccess 文件中添加以下行:您可能需要考虑为您的 PHP 版本使用 E_ALL 的值(如 Gumbo 所述)
error_reporting
来获取所有错误。 更多信息其他 3 项: (1) 您可以检查错误日志文件,因为它将包含所有错误(除非日志记录已被禁用)。 (2) 添加以下 2 行将帮助您调试不是语法错误的错误:
(3) 另一种选择是使用在您键入时检查错误的编辑器,例如 PhpEd 。 PhpEd 还带有一个调试器,可以提供更详细的信息。 (PhpEd 调试器与 xdebug 非常相似,并且直接集成到编辑器中,因此您可以使用 1 个程序来完成所有操作。)
卡特曼的 链接 也很好: http ://www.ibm.com/developerworks/library/os-debug/