我已经检查了我的 PHP ini 文件(php.ini
) and display_errors
已设置,并且错误报告也已设置E_ALL
。我已经重新启动了我的 Apache 网络服务器。
我什至将这些行放在脚本的顶部,它甚至没有捕获简单的解析错误。例如,我用 a 声明变量"$"
我不会结束陈述";"
。但我的所有脚本都在这些错误上显示空白页,但我想实际看到errors在我的浏览器输出中。
error_reporting(E_ALL);
ini_set('display_errors', 1);
还剩下什么要做?
Answer recommended by
PHP /collectives/php
Collective
开发环境
这总是对我有用:
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);
但是,这并不会使 PHP 显示同一文件中发生的解析错误。此外,这些设置可以被 PHP 覆盖。在这些情况下,显示这些错误的唯一方法是使用以下行修改 php.ini (或 php-fpm.conf):
display_errors = on
(如果您无权访问php.ini
,然后将这一行放入.htaccess
也可能有效):
php_flag display_errors 1
产品环境
请注意,上述建议仅适用于 DEV 环境。在实时网站上它必须是
display_errors = off
log_errors = on
然后您将能够在错误日志中看到所有错误。看哪里可以找到 PHP 错误日志 https://stackoverflow.com/q/5127838/285587
AJAX 调用
如果是 AJAX 调用,请在 DEV 服务器上打开 DevTools (F12),然后打开“网络”选项卡。
然后发起您想要看到的结果的请求,它将出现在“网络”选项卡中。单击它,然后单击“响应”选项卡。在那里您将看到确切的输出。
在实时服务器上,只需检查错误日志即可。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)