Php错误屏蔽处理

error_reporting

  • 规定不同的错误级别报告:
  • error_reporting(level);
  • level 可选。规定新的 error_reporting 级别。可以是一个位掩码也可以是一个已命名的常量。
    注释:强烈建议使用已命名的常量,以确保兼容将来的版本。由于错误级别的添加、整数取值范围的增加,较久的基于整数的错误级别不会总是和预期的表现一致。
    可用的错误级别常量及其实际含义描述在了 predefined constants 中。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    // 关闭错误报告
    error_reporting(0);

    // 报告 runtime 错误
    error_reporting(E_ERROR | E_WARNING | E_PARSE);

    // 报告所有错误
    error_reporting(E_ALL);

    // 等同 error_reporting(E_ALL);
    ini_set("error_reporting", E_ALL);

    // 报告 E_NOTICE 之外的所有错误
    error_reporting(E_ALL & ~E_NOTICE);

    ini_set(‘display_errors’,0)

    1
    2
    <?php
    ini_set('display_errors',0)

    php.ini 配置 display_errors = Off

  • 将PHP的log_errors开启即可,默认是记录到WEB服务器的日志文件里,比如Apache的error.log文件
    1
    2
    3
    # vim /etc/php.inidisplay_errors = Off
    log_errors = On
    error_log = /var/log/php-error.log