php错误级别的设置方法

PHP在运行时,针对严重程度不同的错误,会给以不同的提示


eg:在$a没声明时,直接相加,值为NULL,相加时当成0来算.但是,却提示NOTICE,即注意. 我们在开发中,为了程序的规范性,把报错级别,调的比较高NOTICE级别的也报出来,有助于我们快速定位错误代码规范,但是,在产品上线后,网站运营过程中,就不宜报这么多错. 1:这种错误给客户的印象不好
2:在报错时,把网站的绝对路径,如D:\www\1015都报出来了.增大被攻击的风险
因此,在网站上线后,就应该让报错级降低,少报错甚至不报.

修改报错级别:

    1: PHP.ini里修改error_reporting 选项
    2: 可以在PHP页面里,用error_reporting()函数修改 错误级别用2进制的值来表示的: 1111 1111 1111 111从左到右,每位上的1,代表一种错误级别   Fatal error致命错误: 0000 0000 0000 001 开启 1
  warning 警告错误 : 0000 0000 0000 010 开启 2
  NOTICE 警告 : 0000 0000 0001 000 开启 8
eg:     

都报出来

: error_reporting(11);
    

不要报NOTICE

: error_reporting(3);
    

任何错误都不报

: error_reporting(0);

系统为我们把各个级别的值,用系统常量代替了.

    E_ERROR 1
    E_WARNING 2
    E_NOTICE 8 报所有错误: error_reporting(E_ALL);

除了NOTICE,其他都报: error_reporting(E_ALL & ~E_NOTICE);

  在开发中,报错级别高一点,在上线产品中,报错级别要低:+
代码如下:
  define('DEBUG',true); // 在开发时,声明一个DEBUG模式
    if(defined('DEBUG')) { //检测到处于开发模式
    error_reporting(E_ALL);
    } else {
    error_reporting(0);
    }

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...