gpt4 book ai didi

php - 为什么 PHP 错误处理 PHP 并不总是有效?

转载 作者:行者123 更新时间:2023-12-03 08:18:26 25 4
gpt4 key购买 nike

我环顾四周,通常 PHP 错误报告效果很好,当然是在添加下面的 3 行时。
但并非总是如此,例如请注意下面的行:echo;。我认为这应该输出指向该行的错误?但相反,在两台不同的服务器上进行测试时,其中一台会导致内部服务器错误,而另一台则显示“此页面无法正常工作”。

error_reporting(E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

echo ;

这种情况发生在更多情况下,并使调试有点痛苦。
这是预期的吗?错误报告确实并不总是有效吗?
谢谢,
彼得

最佳答案

这是 PHP 解析错误。您将进入控制台或在 linting 文件时进入 (php -l file.php)。它显示:PHP Parse error: syntax error, unexpected ';' in /var/www/html/d.php on line 5 .由于这是解析错误,无论您在上面的文件中没有执行什么,您在这里有这些错误设置都没有关系 - 文件本身不是有效的 php 并且无法解析。当服务器运行它时,它会从 php 得到错误并做出相应的 react 。错误消息在服务器日志中可见。对于我的 apache,它默认记录到/var/log/apache2/error.log。
您可以在 php.ini 文件中进行设置。
更改此 display_errors = Offdisplay_errors = On ,重新加载 apache,您还会看到以下错误:Parse error: syntax error, unexpected ';' in /var/www/html/d.php on line 2即使文件中没有任何其他代码。这是我测试它的文件:

<?php
echo ;

关于php - 为什么 PHP 错误处理 PHP 并不总是有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62753458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com