我在我的机器上安装了 WAMP,我正在开发一个 PHP 网站。谁能告诉我要更改哪些设置才能在浏览器中显示所有错误/警告消息?
提前致谢
您需要同时设置error_reporting和display_errors。这些可以在 php.ini、Apache(如果您使用 PHP 作为 Apache 模块)或在运行时设置,但如果您在运行时设置,则不会影响某些类型的错误,例如作为解析错误。
对于可移植性 - 也就是说,如果你想在应用程序中设置它 - 尝试在 .htaccess 中设置它们:
# note: PHP constants such as E_ALL can't be used when setting it in Apache
php_value error_reporting 2147483647
php_flag display_errors on
或者,您可以在 httpd.conf 中设置这些
display_errors确保所有报告的错误都实际输出到浏览器(在实时服务器上,通常将它们记录到文件中)。 error_reporting指定应该记录/显示哪些类型的错误。
对于实时服务器,最好不要公开显示错误(但您可能仍想记录它们)。无论哪种方式,将 error_reporting 设置为更具包容性的值仍然是个好主意(根据 PHP 文档,2147483647 是现在和未来可能最具包容性的值),因为忽略错误通常是个坏主意。
首先单击任务面板中的 wamp 图标。然后单击“PHP”文件夹,然后单击“PHP 设置”文件夹。确保“暴露 PHP”和“显示错误”都被选中。您还可以设置其他错误设置,例如“跟踪错误”和“显示启动错误”。
找到您的 php.ini 文件,在阅读评论时向下滚动。有一个用于启用/禁用错误输出的全局设置。相应地改变它。重新启动您的 Apache。
我总是使用这段代码:
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
如果您使用 OOP PHP 编写代码,则创建新方法showError()并在您需要的每个文件中调用它。
打开您的php.ini
并搜索选项error_reporting
。
将其更改为E_ALL & ~E_NOTICE
.
这将显示所有错误和警告,但没有通知。
就我个人而言,我总是E_ALL
在我的开发机器上使用,因为这些通知通常是潜在代码问题的迹象。
如果有人正在使用 CodeIgniter,则将此代码传递给控制器的构造函数。这将解决您的问题。
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);