register_shutdown_function
注册一个会在php中止时执行的函数,注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用。
error_get_last
获取最后发生的错误,包含type(错误类型),message(错误消息),file(发生错误所在的文件),line(发生错误所在的行)的一个数组,如果没有错误则返回null。
两个函数可以结合使用,获取程序发生的错误,并记录日志信息。
以下是个简单例子:
class errors
{
/**
* 回调函数
*/
function shutdown()
{
// 获取错误
$error = error_get_last();
if ($error) {
// 记录日志信息
var_dump($error);
}
}
}
class test{
function test_shutdown()
{
// 注册一个会在php中止时执行的函数 shutdown
register_shutdown_function([new errors(), 'shutdown']);
// 这里调用一个不存在的函数测试
testaa();
}
}
$test = new test();
$test->test_shutdown();