PHP关闭Notice错误提示

2014 年 4 月 13 日4010

本文章介绍在php中关闭notice错误的一些做法,但是不得不说的是在关掉错误提示时,那么程序代码中大量的notice级别错误是否会造成PHP性能下降

PHP Notice: Undefined variable

PHP Notice: Undefined index

看看吧,你有没定义的变量直接使用了。不过编PHP的时候本来就不像C++那么严格,编程的时候经常还会利用这个特点。PHP的默认设置是显示这些提示,这会造成页面无法正常显示出来。

代码如下

复制代码

//error_reporting(E_ALL);

error_reporting(E_ALL || ~E_NOTICE); //显示除去 E_NOTICE 之外的所有错误信息

第一个是代表显示所有错误,

第二个代表显示所有错误不显示警告,

我们只要把第二行前面加//,把第一行前面的//去掉即可。

附:各个错误报告详解

使用方法:

代码如下

复制代码

error_reporting(0);//禁用错误报告

error_reporting(E_ALL ^ E_NOTICE);//显示除去 E_NOTICE 之外的所有错误信息

error_reporting(E_ALL^E_WARNING^E_NOTICE);//显示除去E_WARNING E_NOTICE 之外的所有错误信息

error_reporting(E_ERROR | E_WARNING | E_PARSE);//显示运行时错误,与error_reporting(E_ALL ^ E_NOTICE);效果相同。

error_reporting(E_ALL);//显示所有错误

实例

代码如下

复制代码

if (!$a) {

error_reporting(0);

ob_start('ob_gzhandler');

} else {

error_reporting(E_ALL ^ E_NOTICE);

}

php.ini中禁止修改方法

1、由空间商在服务器中的php.ini的配置文件修改:

在php.ini文件中改动error_reporting

改为:

代码如下

复制代码

error_reporting = E_ALL & ~E_NOTICE

如果你是固得美国空间用户,不能操作php.ini文件,你可以用下面的方法来实现

2.在你想禁止notice错误提示的页面中加入下面的代码

代码如下

复制代码

/* Report all errors except E_NOTICE */

error_reporting(E_ALL ^ E_NOTICE);

注意一点的是

关闭掉PHP错误输出并不会关闭php内核对错误的处理,代码中如果有大量的Notice级别的错误,还是会降低php程序的性能。所以我们在开发的时候还是要将错误级别开至E_ALL,谨慎的处理掉每处不合理的代码

0 0