`
810364804
  • 浏览: 794053 次
文章分类
社区版块
存档分类
最新评论

error_reporting(E_ALL ^ E_NOTICE);

 
阅读更多
在看帝国cms的connect.php是发现第一句是error_reporting(E_ALL ^ E_NOTICE);以前也没注意过这个语句,知道是设置错误提示的,但不清楚具体怎样设置使用。下面从网上摘抄了些东西,总结了一下。



举例说明:


在Windows环境下:原本在php4.3.0中运行正常的程序,在4.3.1中为何多处报错,大体提示为:Notice:Undefined varialbe:变量名称.
例如有如下的代码:
复制代码 代码如下:


if (!$tmp_i) {
$tmp_i=10;
}


在4.3.0中运行正常,在4.3.1中运行会提示Notice:Undefined varialbe:tmp_i
问题下下:
1.问题出在哪里?
2.应如何修改这段代码?
3.不改段代码,如何修改php.ini中的设置使原来在4.3.0中的程序在4.3.1的环境下运行正常?而不出现这个错误提示.


解决办法:


在程序开头加一句:
error_reporting(E_ALL & ~E_NOTICE); 或error_reporting(E_ALL ^ E_NOTICE);


或者
修改php.ini
error_reporting = E_ALL & ~E_NOTICE


有关error_reporting()函数:




error_reporting() 设置 PHP 的报错级别并返回当前级别。


; 错误报告是按位的。或者将数字加起来得到想要的错误报告等级。
; E_ALL - 所有的错误和警告
; E_ERROR - 致命性运行时错
; E_WARNING - 运行时警告(非致命性错)
; E_PARSE - 编译时解析错误
; E_NOTICE - 运行时提醒(这些经常是是你的代码的bug引起的,


;也可能是有意的行为造成的。(如:基于未初始化的变量自动初始化为一个
              ;空字符串的事实而使用一个未初始化的变量)


; E_CORE_ERROR - 发生于PHP启动时初始化过程中的致命错误
; E_CORE_WARNING - 发生于PHP启动时初始化过程中的警告(非致命性错)
; E_COMPILE_ERROR - 编译时致命性错
; E_COMPILE_WARNING - 编译时警告(非致命性错)
; E_USER_ERROR - 用户产生的出错消息
; E_USER_WARNING - 用户产生的警告消息
; E_USER_NOTICE - 用户产生的提醒消息


使用方法:


error_reporting(0);//禁用错误报告
error_reporting(E_ALL ^ E_NOTICE);//显示除去 E_NOTICE 之外的所有错误信息
error_reporting(E_ALL^E_WARNING^E_NOTICE);//显示除去E_WARNING E_NOTICE 之外的所有错误
分享到:
评论

相关推荐

    PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明

    在看帝国cms的connect.php是发现第一句是error_reporting(E_ALL ^ E_NOTICE);以前也没注意过这个语句,知道是设置错误提示的,但不清楚具体怎样设置使用。下面从网上摘抄了些东西,总结了一下。

    PHP中error_reporting函数用法详细介绍

    PHP中对错误的处理会用到error_reporting函数,看到最多的是error_reporting(E_ALL ^ E_NOTICE),这个是什么意思呢?下面我们具体分析error_reporting函数。 定义用法 error_reporting() 设置 PHP 的报错级别并返回...

    PHP中error_reporting()用法详解

    php中我们对错误的处理会常用到error_reporting函数了,大家可以看到最多的是error_reporting(E_ALL ^ E_NOTICE)了,这个到底什么意思呢,下面我来来看看。

    PHP提示Notice: Undefined variable的解决办法

    Notice: Undefined variable 这就是将警告在页面上打印出来,虽然这是有利于暴露问题,但实现使用...修改为error_reporting = E_ALL & ~E_NOTICE 2) register_globals设置: 找到register_globals = Off 修改为registe

    php Undefined index的问题

    error_reporting = E_ALL &~E_NOTICE。 也可在页面顶部加上error_reporting(0); 将禁止本页内任何错误显示 又是一个提交程序的小bug,以前写程序的时候对提交数据几乎没做什么验证判断,比如接受 tj 的值,根本就...

    Notice: Undefined index: page in E:\PHP\test.php on line 14

    display all errors, warnings and notices 改成 error_reporting = E_ERROR & ~E_NOTICE & ~E_WARNING 不然 isset($_GET[“page”])做個if-else判斷!! —-修正後原始碼如下—- if(isset($_GET[“page”]))$page=$_...

    sphinxapi.php

    error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE); require 'sphinxapi.php'; $cl = new SphinxClient(); $cl->SetServer('192.168.1.1', 9312); //注意这里的主机 if (! $cl->open ()) { echo 'n'; } ...

    php把Excel导mysql

    非常实用的纯净实例 ... // ExcelFile($filename, $encoding); $data = new Spreadsheet_Excel_Reader();...error_reporting(E_ALL ^ E_NOTICE); for ($i = 1; $i $data->sheets[0]['numRows']; $i++) {

    phpFileAdmin_GB2312

    本源码基于GB2312开发,针对于对中文文档的管理,如有...部署服务器中需要把php.ini中修改为“error_reporting = E_ALL & ~E_NOTICE”,并且服务器中php支持便签语法,即支持“”。如使用中出现错误可随时反馈,谢谢!

    PHP的EXCEL类

    error_reporting(E_ALL ^ E_NOTICE); for ($i=0;$i <$data->sheets[0]['numRows'];$i++) { for ($j=0;$j<$data->sheets[0]['numCols']; $j++) { $lwb[i][j]=$data->sheets[0]['cells'][$i+1][$j+1]; echo $lwb[i]...

    Underscore.php——Underscore.js的php移植版

    Underscore.js是目前最好用的Javascript工具包,提供了100多...error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED); 即可屏蔽该警告,笔者已经在php7正式版中做了大量测试,Underscore.php依然非常好用!

    php Undefined index和Undefined variable的解决方法

    $act=$_POST[‘act’]; 用以上代码总是提示 Notice:...解决方法: 1) error_reporting设置: 找到error_reporting = E_ALL 修改为error_reporting = E_ALL & ~E_NOTICE 2) register_globals设置: 找到registe

    php5.3以上在windows下fastcgi安装时的几个参数配置

    error_reporting = E_ALL & ~E_NOTICE fastcgi.impersonate = 1 cgi.rfc2616_headers = 1 cgi.fix_pathinfo = 1 cgi.force_redirect = 0 upload_tmp_dir =C:/php/temp extension_dir = "C:/php/temp" ...

    基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解

    AppServ,XAMPP,WAMP都是集成了apache,mysql,php的套装,使用起来比较方便,就不需要再去一个个的配置php,apache和...在文件中搜索,error_reporting = E_ALL ,这是默认值,然后改成:error_reporting = E_ALL&~

    PHP.ini中配置屏蔽错误信息显示和保存错误日志的例子

    在PHP程序运行过程中如果有错误发生,在浏览器上是否显示错误信息,以及显示错误信息的级别是我们在程序开发、调试、运营...代码如下:error_reporting = E_ALL (全部) error_reporting = E_ALL & ~E_NOTICE (Notice 以

    PHP错误提示的关闭方法详解

    复制代码 代码如下:error_reporting(E_ALL^E_NOTICE^E_WARNING); 可以关闭所有notice 和 warning 级别的错误。 把这个语句放在您脚本的功用包含文件中,通常为config.php 或者conn.php 中就可以控制输出了。 当然我...

    php 出现Strict Standards: Only variables should be passed by reference in的解决方法

    另一个办法是修改php配置文件,修改error_reporting 其值改为error_reporting = E_ALL& ~E_NOTICE。或者修改函数中的引用方式即可。 ps:修改配置文件时,最好是复制一行,注掉,然后再改,如果需要随时切回。 ...

    详解PHP中websocket的使用方法

    error_reporting(E_ALL ^ E_NOTICE); ob_implicit_flush(); //file_put_contents('lz.text','123', FILE_APPEND); $sk=new Sock('127.0.0.1',8000); $sk->run(); class Sock{ public $sockets; public $users; ...

    仿XP网站源码(PHP200菜鸟)dzx3.0版

    error_reporting = E_ALL & ~E_NOTICE —————————————————————————————————— 文件夹 说明: 1、controller 控制器 (重要) 2、models 模型 (重要) 3、templates 模板文件...

Global site tag (gtag.js) - Google Analytics