错误报告设置
产品上线后,网站运营过程中,就不要进行报错。
1. 客户印象不好
2. 报错中,绝对路径暴露,安全风险变大
3. 网站上线后,不要报错。
方法:
1. 修改php.ini 里修改 error_reporting 选项
2. 在php页面里面,用error_reporting() 函数来修改
错误级别是用2进制掩码来表示的
1111 1111 1111 111
从左到右,每位上的1,代表1种错误
fatal error 致命错误: 0000 0000 0000 001 开启
warning 警告错误: 0000 0000 0000 010 开启
NOTICE 通告: 0000 0000 0001 000 开启
系统为我们把各个级别都用系统常量代替了
E_ERROR 1
E_WARNING 2
E_NOTICE 8
可以进行位运算
例如 要通告warning 和 fatal 不通报 notice的时候可以如下设置
1 error_reporting(E_ALL & ~E_NOTICE); 2 3 4 error_reporting(0); 5 echo $a+$b; //notice 通报 6 echo 3/0; //warning 通报 7 echo dsafasdfasdf();// fatal 通报
在开发中,报错级别要高
上线产品,报错级别要低
1 define('DEBUG',true); //在开发时,声明一个DEBUG模式 2 3 if(defined('DEBUG')){ //检测到处于开发模式 4 error_reporting(E_ALL); 5 } else { 6 error_reporting(0); 7 }