PHP Notice: Undefined variable
PHP Notice: Undefined index
看看吧,你有没定义的变量直接使用了。不过编PHP的时候本来就不像C++那么严格,编程的时候经常还会利用这个特点。PHP的默认设置是显示这些提示,这会造成页面无法正常显示出来。
代码如下
1//error_reporting(E_ALL); error_reporting(E_ALL || ~E_NOTICE); //显示除去 E_NOTICE 之外的所有错误信息
第一个是代表显示所有错误,
第二个代表显示所有错误不显示警告,
我们只要把第二行前面加//,把第一行前面的//去掉即可。
附:各个错误报告详解
使用方法:
代码如下
1error_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);//显示所有错误
实例
代码如下
1if (!$a) { error_reporting(0); ob_start('ob_gzhandler');} else { error_reporting(E_ALL ^ E_NOTICE);}
在php.ini中禁止修改方法
1、由空间商在服务器中的php.ini的配置文件修改:
在php.ini文件中改动error_reporting
改为:
代码如下
1error_reporting = E_ALL & ~E_NOTICE
如果你是固得美国空间用户,不能操作php.ini文件,你可以用下面的方法来实现
2.在你想禁止notice错误提示的页面中加入下面的代码
代码如下
1/* Report all errors except E_NOTICE */error_reporting(E_ALL ^ E_NOTICE);
注意一点的是
关闭掉PHP错误输出并不会关闭php内核对错误的处理,代码中如果有大量的Notice级别的错误,还是会降低php程序的性能。所以我们在开发的时候还是要将错误级别开至E_ALL,谨慎的处理掉每处不合理的代码