开发框架中,可能会觉得PHP的错误显示太难看了,为了好看一点、高大上一点,我们就用错误接管,下面我们简单描述一下PHP的错误接管,当然你也可以接管错误以后抛出异常,不管是错误还是异常全部交给异常来处理。
PHP内置的错误级别大概21个,大家可以去官方手册查看,点击查看。相信大家都是知道set_error_handler这个错误接管函数的,你可能不知道的是这个函数有6个错误无法接管,虽然文档中也写了,很多人要么没看懂,要么没仔细看,这6个错误分别是:E_ERROR、 E_PARSE、 E_CORE_ERROR、 E_CORE_WARNING、E_COMPILE_ERROR、 E_COMPILE_WARNING,那么这6种错误改怎么办呢,PHP还有一个内置函数就是register_shutdown_function,这个函数就是PHP运行完以后会调用的,这个时候我们就可以使用error_get_last函数来获取PHP运行有没有错误,如果有错误,我们获取错误信息进行处理,如果没有就让register_shutdown_function什么也不做就可以了。还有一点需要注意的就是register_shutdown_function是接管运行阶段的错误的,像语法解析、词法解析阶段也就是E_PARSE和E_COMPILE阶段的错误接管不到,这个时候我们就需要用到include和require了,相信这个道理大家都是明白的,我就不过多的讲述了,我们直接来上代码。我们创建俩个PHP文件,a.php和b.php,a.php写我们要用到的代码,b.php写接管。
a.php

b.php
