错误处理

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

/* 我们在开发中, 为了程序的规范性,把报错级别,调的比较高
NOTICE级别的也报出来,有助于我们快速定位错误和代码规范

但是,在产品上线后,网站运营过程中,就不宜报这么多错.
1:这种错误给客户的印象不好
2:在报错时,把网站的绝对路径,如D:\www\1015都报出来了.
增大被攻击的风险

因此,在网站上线后,就应该让 报错级别低,少报错甚至不报.*/

/* 1: php.ini里修改error_reporting 选项
2: 可以在php页面里,用error_reporting()函数来修改 */

//3:翻手册在函数参考->影响php行为扩展->错误处理->预定义常量。列出的错误级别

//4:都是以二进制形式列出的级别从左到右,每位上的1,代表一种错误级别

//5:用error_reporting()来修改,当取值大于各个级别的总数是,都会影响到他们的错误提示。
//如/*
/* error_reporting(3);
echo $a+$b; // notice不报了
echo 3/0;   // warning报出来
echo dsafdsa(); // fatal报出来 */

/*
 error_reporting(0);
echo dsafdsa(); // fatal不报
echo $a+$b; // notice报出来
echo 3/0;   // warning报出来
*/
// 报除了notice之个的所有错误,即除了NOTICE,其他都报.
error_reporting(E_ALL & ~E_NOTICE);


// 在开发中,报错级别高一点
// 在上线产品中,报错级别要低

define('DEBUG',true);  // 在开发时,声明一个DEBUG模式

if(defined('DEBUG')) { //检测到处于开发模式
	error_reporting(E_ALL);
} else {
	error_reporting(0);  //什么都不提示
}










?>

你可能感兴趣的:(PHP)