【问题标题】:Turning off Deprecation warnings in PHP.ini file WAMP关闭 PHP.ini 文件 WAMP 中的弃用警告
【发布时间】:2014-08-24 22:33:22
【问题描述】:

我正在从事 @home 项目并使用 WAMP 进行开发。目前php.ini 文件的以下行设置如下:

error_reporting = E_ALL & ~E_DEPRECATED
display_errors = On

我曾希望这样做可以防止出现弃用警告。然而事实并非如此。有没有办法可以调整 error_reporting 以忽略已弃用的警告。

我目前得到的输出:

【问题讨论】:

标签: php


【解决方案1】:

你可以使用这个功能:

error_reporting(E_ALL ^ E_DEPRECATED);

http://www.php.net/manual/en/function.error-reporting.php

或者在函数名前使用“@”运算符。

@mysql_connect();

【讨论】:

  • 谢谢,在 Ubuntu 上使用 PHP 5.5.9 error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT 没有效果....但是 "@mysql_connect();"做这个把戏
【解决方案2】:

在您的 php.ini 文件中更改以下内容..(注意 wamp 有 2 个不同的 php.ini 文件,因此请同时更改)

从这里

error_reporting = E_ALL

到这里

error_reporting = E_ALL & ~E_DEPRECATED

【讨论】:

    【解决方案3】:

    我遇到了同样的问题。然而事实证明,我编辑了错误的php.ini 文件。就我而言,正确的是

    C:\wamp64\bin\php\php5.6.25\phpForApache.ini

    在这个文件中,我将这一行更改为:

    error_reporting = E_ALL & ~E_DEPRECATED.

    我在那个“显而易见的”php.ini 文件中所做的更改没有任何区别。

    【讨论】:

      【解决方案4】:

      如果您想显示除弃用之外的所有错误,请使用此设置:

      error_reporting = E_ALL ^ E_DEPRECATED
      

      编辑:您还可以创建自定义错误处理程序以仅隐藏 mysql_ 弃用警告:

      set_error_handler(function($errno, $errstr) {
          return strpos($errstr, 'mysql_') === 0;
      }, E_DEPRECATED);
      

      但请注意,mysql_ 函数已被弃用。因此,与其试图隐藏错误,不如考虑切换到mysqliPDO

      【讨论】:

      • 你重启服务器了吗?
      • 是的,我做到了。但它不起作用 error_reporting = E_ALL & ~E_DEPRECATED 现在在 php.ini
      【解决方案5】:

      要隐藏 WAMP 服务器上的 php 错误,请打开 php.ini 文件并找到以下代码行

      error_reporting = E_ALL
      

      替换成

      error_reporting = E_ALL & ~E_NOTICE
      

      所有错误都将被隐藏/禁用。

      【讨论】:

        【解决方案6】:

        将您的错误报告设置为

        error_reporting (E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

        在您的 php 页面上。

        【讨论】:

          猜你喜欢
          • 2011-05-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-03
          • 1970-01-01
          相关资源
          最近更新 更多