所以我有xampp,它根本不会报告任何东西......我什至强行出错,它没有做任何事情......
我用了
error_reporting(-1);
ini_set( 'display_errors', 1 );
根据本文档http://php.net/manual/en/function.error-reporting.php
也error_reporting(E_ALL);
没有做任何事情......
所以我有xampp,它根本不会报告任何东西......我什至强行出错,它没有做任何事情......
我用了
error_reporting(-1);
ini_set( 'display_errors', 1 );
根据本文档http://php.net/manual/en/function.error-reporting.php
也error_reporting(E_ALL);
没有做任何事情......
嘿,看看那个,在编写代码时犯了一个更疯狂的错误并且它可以工作......但为什么它没有显示所有错误?
可能您没有收到任何“简单”错误,例如:
Parse error: syntax error, unexpected T_VARIABLE in .../.../index.php on line 6
#or
Warning: include(whateveryouwantedto.include): failed to open str(...)
但你确实得到了类似的东西:
Fatal error: Call to undefined method stdClass::Crap() in .../.../index.php on line 6
根据我的想法,这是因为如果您不禁用 PHP 配置中的日志记录,“简单”错误将“无处”发送。换句话说:PHP 通过不显示任何错误来“帮助”您,因为您定义了log_errors = On
和/或error_log = 'php_errors.log'
它正在记录所有“真实”错误,但您只是不将其划分为“真实”类别。
如果这没有帮助,思考帽会说:“它不记得了,但我肯定知道它在 PHP 或 Apache 配置中的某个地方。”
当然希望我的思考帽能帮到你。
编辑:解决这个问题可能是找到并打开 php.ini,全选,删除/退格,保存(但保持打开)(或在某处保存副本)。然后重新启动 Apache。看看有没有区别。如果是这样,则 php 配置在其他地方。恢复 php 文件并从根目录搜索您的计算机或服务器以查找另一个 php.ini。
另外我认为你应该确保:
log_errors = Off
error_log = "./"
display_errors = On
error_reporting = E_ALL
或在 PHP 中:
error_reporting(E_ALL & E_STRICT);
ini_set('display_errors', '1');
ini_set('log_errors', '0');
ini_set('error_log', './');
在您的文件夹 xampp/php 中创建名为 logs 的新文件夹。转到控制面板应用程序日志单击 php_error_log 它现在会询问您是否要创建文件。
error_reporting 功能有时会在本地服务器上关闭,例如,Xampp 不支持它,因此您必须转到 php.ini 并在那里进行更改。希望这可以帮助 :)。