register_shutsown_function
说明:
1.定义:该函数是来注册一个会在PHP中止时执行的函数
void register_shutdown_function ( callable $callback [, mixed $parameter [, mixed $... ]] )
注册一个callback,callback会在脚本执行结束,或者die掉时调用
用法一:
function test()
{
echo 'this is test function';
}
register_shutdown_function('test');
echo 'before' . PHP_EOL;
/**
* 运行结果:
* befor
* this is test function
*/
用法二:
function test()
{
echo 'this is test function';
}
register_shutdown_function('test');
echo 'before' . PHP_EOL;
die();
echo 'after' . PHP_EOL;
/**
* 运行结果:
* befor
* this is test function
*/
用法三:
function test()
{
if ($error = error_get_last()) {
var_dump($error['message']);
}
}
register_shutdown_function('test');
new sss();
/**
* 运行结果:
* string(114) "Uncaught Error: Class 'sss' not found in /Applications/MAMP/htdocs/test/say.php:20
Stack trace:
#0 {main}
thrown"
*/
总结
通常 register_shutdown_function
用来捕获运行期的致命错误