即使 display_errors 为 Off 且 error_reporting 为 0 也会显示 PHP 通知

Posted

技术标签:

【中文标题】即使 display_errors 为 Off 且 error_reporting 为 0 也会显示 PHP 通知【英文标题】:PHP notices shown even display_errors is Off and error_reporting is 0 【发布时间】:2019-12-28 22:39:27 【问题描述】:

VmWare 云服务器

CentOS Linux 7.6.1810 - php 5.6.40 - Apache/2.4.6

test.php

<?php
  echo($x);
  phpinfo();
?>

输出:

注意:/var/www/html/test.php 第 1 行中未定义的变量 x

在 phpinfo 输出的 CORE 部分我有

display_errors 关闭

display_startup_errors 关闭

error_reporting 0

为什么会显示通知?

我不想显示任何错误/通知/警告等。

【问题讨论】:

尝试将error_reporting(E_ERROR | E_PARSE); 放在&lt;?php 之后以避免警告。 Turn Off Display Error PHP.ini的可能重复 【参考方案1】:

您的设置可能在 htaccess 文件中控制,请参阅更多信息:https://www.php.net/manual/en/configuration.changes.php

但是你可以试试这个:

<?php
ini_set('display_errors', 0);
echo($x);
phpinfo();

【讨论】:

【参考方案2】:

尝试在 PHP 脚本的顶部添加以下内容:

<?php error_reporting(0); ?>

如果通知消失,我建议确保您正在修改好的 php.ini 文件。

【讨论】:

以上是关于即使 display_errors 为 Off 且 error_reporting 为 0 也会显示 PHP 通知的主要内容,如果未能解决你的问题,请参考以下文章

即使在 php.ini 中使用 display_errors = On,PHP 也没有错误

display_errors","On");和error_reporting 区别和联系

php安全处理

PHP优化笔记

关闭错误显示

PHP错误日志控制(display_errors和error_reporting)