php致命错误的异常捕获
2016-12-20 16:17
176 查看
使用register_shutdown_function函数绑定捕获函数
使用error_get_last函数捕获当前错误信息
error_get_last()打印结果,type为php错误级别表中的对应值
php错误级别
使用error_get_last函数捕获当前错误信息
register_shutdown_function("errorCheck"); function errorCheck(){ $error=error_get_last(); // print_r("<pre>"); // print_r($error); // print_r("</pre>"); if ($error['type']==4){ if (file_exists($error_file)) { //创建日志 $log_file=date("Y_m_d_G_i_s").".txt"; $file_open = fopen($log_file,"w+"); fclose($file_open); } } } function test(Array $a){ echo 1; } //强行报错 test(123);
error_get_last()打印结果,type为php错误级别表中的对应值
Array ( [type] => 4096 [message] => Argument 1 passed to test() must be an array, integer given, called in D:\www\n.php on line 18 and defined [file] => D:\www\n.php [line] => 14 )
php错误级别
值 | 常量 | 描述 |
---|---|---|
2 | E_WARNING | 非致命的 run-time 错误。不暂停脚本执行。 |
8 | E_NOTICE | Run-time 通知。 脚本发现可能有错误发生,但也可能在脚本正常运行时发生。 |
256 | E_USER_ERROR | 致命的用户生成的错误。这类似于程序员使用 PHP 函数 trigger_error() 设置的 E_ERROR。 |
512 | E_USER_WARNING | 非致命的用户生成的警告。这类似于程序员使用 PHP 函数 trigger_error() 设置的 E_WARNING。 |
1024 | E_USER_NOTICE | 用户生成的通知。这类似于程序员使用 PHP 函数 trigger_error() 设置的 E_NOTICE。 |
4096 | E_RECOVERABLE_ERROR | 可捕获的致命错误。类似 E_ERROR,但可被用户定义的处理程序捕获。(参见 set_error_handler()) |
8191 | E_ALL | 所有错误和警告,除级别 E_STRICT 以外。 (在 PHP 6.0,E_STRICT 是 E_ALL 的一部分) |
相关文章推荐
- php捕获异常错误
- 拦截PHP各种异常和错误,发生致命错误时进行报警,万事防患于未然
- PHP各种异常和错误的拦截方法及发生致命错误时进行报警
- PHP学习系列之错误处理和异常捕获
- 拦截PHP各种异常和错误,发生致命错误时进行报警,万事防患于未然
- PHP自动捕获Exception,Fatal error等错误和异常
- 捕获 PHP 致命错误 Fatal Errors
- 如何使用register_shutdown_function()捕获PHP致命错误?
- PHP各种异常和错误的拦截方法及发生致命错误时进行报警
- 韩顺平php视频笔记80 81 错误日志 异常捕获
- 拦截PHP各种异常和错误,发生致命错误时进行报警,万事防患于未然
- J2CA0056I: 连接管理器接收到来自资源 jdbc/gywork 的资源适配器的致命连接错误。接收到的异常为 com.ibm.websphere.ce.cm.StaleConnectionException: JZ006: 捕获到 IO 例外:com
- PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
- PHP错误异常处理详解
- PHP 的错误、异常等级常量表,异常处理及错误回调函数
- PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
- Android 程序错误处理全局处理-捕获全局异常
- PHP 使用回调函数(set_error_handler)处理异常和错误
- PHP 异常与错误处理
- php异常、错误处理机制