error_reporting() 错误级别详解
在PHP开发的时候常常会用到error_reporting(report_level)来调试自己的程序。下面列出了report_level可能值
| 值 | 常量 | 描述 | 
|---|---|---|
| 1 | E_ERROR | 这是一个严重错误,不可恢复,如位置异常,内存不足等 | 
| 2 | E_WARNING | 警告,最一般的错误,如函数的参数错误等 | 
| 4 | E_PARSE | 解析错误,在解析PHP文件时产生,并强制PHP在执行前退出 | 
| 8 | E_NOTICE | 通告表示可能在操作一些未知的变量等。在开发时可开启通告,以保证程序是"安全通告"的,瑞在正式系统中,应关闭通告 | 
| 16 | E_CORE_ERROR | 这个内部错误是由于PHP加载扩展失败而导致的,并且会导致PHP停止运行并退出 | 
| 32 | E_CORE_WARNING | PHP启动时初始化过程中的警告(非致命性错) | 
| 64 | E_COMPILE_ERROR | 编译错误是在编译时发生,这个错误将导致PHP运行退出 | 
| 128 | E_COMPILE_WARNING | 编译警告用于告诉用户一些不推荐的语法信息 | 
| 256 | E_USER_ERROR | 用户定义的错误将导致辞PHP退出,它对是来自PHP自身,而是来自脚本文件中。 | 
| 512 | E_USER_WARNING | 脚本使用它来通知一个执行失败,同时PHP也会用E_WARNING通知 | 
| 1024 | E_USER_NOTICE | 用户定义的通告用于在脚本中表示可能存在的错误 | 
| 2048 | E_STRICT | 编码标准化警告(建议如何修改以向前兼容) | 
| 4096 | E_RECOVERABLE_ERROR | 接近致命的运行时错误,若未被捕获则视同E_ERROR | 
| 8191 | E_ALL | 除E_STRICT外的所有错误(PHP6中为8191,即包含所有) | 
例子:
任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别:
 
PHP代码
<?php //禁用错误报告 error_reporting(0); //报告运行时错误 error_reporting(E_ERROR | E_WARNING | E_PARSE); //报告所有错误 error_reporting(E_ALL); error_reporting(7); 设置php错误检测级别 E_ERROR - 致命性运行时错 (1) E_WARNING - 运行时警告(非致命性错)(2) E_PARSE - 编译时解析错误 (4) 1+2+4 = 7 ?>
转
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号