【问题标题】:Unable to turn off notice errors in PHP 5.3.2PHP 5.3.2 中无法关闭通知错误
【发布时间】:2011-02-11 14:43:53
【问题描述】:

我最近迁移到 PHP 5.3.2,并意识到我现在无法关闭我网站中的通知错误。我去了php.ini,在这些行中:

; Common Values:
;   E_ALL & ~E_NOTICE  (Show all errors, except for notices and coding standards warnings.)
;   E_ALL & ~E_NOTICE | E_STRICT  (Show all errors, except for notices)
;   E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR  (Show only errors)
;   E_ALL | E_STRICT  (Show all errors, warnings and notices including coding standards.)
; Default Value: E_ALL & ~E_NOTICE
; Development Value: E_ALL | E_STRICT
; Production Value: E_ALL & ~E_DEPRECATED
; http://php.net/error-reporting
error_reporting = E_ALL & ~E_NOTICE

...我已尝试设置所有内容(并且每次都重新启动 apache),但我无法摆脱通知。

我能够摆脱通知错误的唯一方法是设置:

display_errors = Off

当然,这不是我能做的事情,因为我需要查看错误来修复它们,而且我希望在我正在编码的网页上查看错误,而不是将它们记录在某个地方。

有人可以帮忙吗?这是 PHP 5.3.2 中的错误还是我做错了什么?

非常感谢您的宝贵时间!

P。 S. 另外,有人知道我怎样才能让 PHP 5.3.2 支持 .php3 扩展吗?

【问题讨论】:

    标签: php error-handling


    【解决方案1】:

    好的,我知道出了什么问题。我在我的代码中设置了error_reporting,它覆盖了php.ini error_reporting。

    现在,在我升级到 PHP 5.3.2 之前,同样的东西一直在工作的原因是 - 在我的代码中,我设置了 error_reporting 命令:

    error_reporting(6143);

    我应该把它设置为:

    error_reporting(E_ALL ^ E_NOTICE);

    我猜 6143 在 PHP 5.3.2 中的含义与 4.1 中的不同(或者我之前的版本)。

    至于php3扩展名,在/etc/httpd/conf.d/php.conf文件中设置:

    AddHandler php5-script .php .php3

    AddType text/html .php

    感谢 sourcez 的建议!

    【讨论】:

    • E_NOTICE 的值为 4,在级别 6143 中(并且一直是)启用(这恰好是 PHP 5.2.x 中 E_ALL 的值:两者之间的唯一区别而 PHP 5.3.x 中的 E_ALL 是 6143 排除 两个新引入的模式 E_DEPRECATEDE_USER_DEPRECATED——但由于它们在 5.2.x 中不存在,所以这很简单)。因此,这种变化并不能真正解释您观察到的行为。
    • 谢谢..帮助..!!
    【解决方案2】:

    我今天在使用 TCPDF 库生成 PDF 的网站上也遇到了同样的错误。它工作正常,但突然我今天开始收到以下错误

    Severity: 8192
    Message: Imagick::clone method is deprecated .....
    

    可能是托管服务提供商更新了 PHP 或 Imagick。 PHP - 5.4 和 Imagick - 3.x

    所以为了在我的代码中摆脱这个,我将 error_reporting 设置为

    error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED);
    

    这将显示错误,但不显示已弃用的通知。同时我可以更改我的代码以支持新版本的 Imagick。

    【讨论】:

      猜你喜欢
      • 2012-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-21
      • 1970-01-01
      • 1970-01-01
      • 2020-08-29
      相关资源
      最近更新 更多