代码之家  ›  专栏  ›  技术社区  ›  iftheshoefritz

尽管在PHP.ini中关闭了Drupal页面上的警告,但PHP不赞成使用这些警告

  •  5
  • iftheshoefritz  · 技术社区  · 14 年前

    我有PHP不推荐的错误充斥日志文件和Drupal状态页,如下所示:

    : Function ereg() is deprecated in mysite/includes/file.inc on line 893.
    

    我应该可以在php.in I中关闭不推荐的错误,但是它没有任何效果,尽管设置为:

    error_reporting = E_ALL & ~E_DEPRECATED
    

    我做了一个

    grep -R error_reporting 
    

    ./includes/common.inc:  // If the @ error suppression operator was used, error_reporting will have
    ./includes/common.inc:  if (error_reporting() == 0) {
    ./modules/system/system.module:    'page arguments' => array('system_error_reporting_settings'),
    ./modules/system/system.admin.inc:function system_error_reporting_settings() {
    ./modules/system/system.install:      $err = error_reporting(0);
    ./modules/system/system.install:      error_reporting($err);
    

    除了system.install中的第一行之外,我看不出有什么是supect,但是如果我是对的,那么应该关闭所有错误。

    我希望有一个解决方案不涉及common.inc中的硬编码错误级别(这确实有效,我已经尝试过了——但显然是不可取的)。

    我知道不推荐的错误是升级到PHP 5.3的结果,但降级PHP不是选项(新站点现在将在5.3上测试过的同一服务器上运行,出现这些错误的站点还有2个月的时间)。我也无法升级到Drupal版本,因为不幸的是,前一个所有者在没有记录其更改的情况下修改了核心模块。

    版本资料:

    PHP5.3.2-1,Ubuntu10.04,Drupal6.13一个站点,6.5(!!1!)另一方面,Apache 2.2

    3 回复  |  直到 11 年前
        1
  •  3
  •   mpdonadio    14 年前

    您是否尝试将index.php编辑为

    
    error_reporting(E_ALL & ~E_DEPRECATED & ~E_USER_DEPRECATED);
    
    require_once './includes/bootstrap.inc';
    drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
    
        2
  •  2
  •   eeerahul Arrj    12 年前

    php.ini 并可以隐藏那些不推荐的错误。希望对你有帮助!=)

    error_reporting  =  E_ALL & ~E_DEPRECATED & -E_WARNING
    
        3
  •  0
  •   MatTheCat    14 年前

    ereg 职能 preg_match ..!