1 2 3 4 5 |
register_shutdown_function (PHP 4, PHP 5, PHP 7) register_shutdown_function — 注册一个会在php中止时执行的函数 |
说明
1 2 3 |
void register_shutdown_function ( callable $callback [, mixed $parameter [, mixed $... ]] ) 注册一个 callback ,它会在脚本执行完成或者 exit() 后被调用。 |
可以多次调用 registershutdownfunction() ,这些被注册的回调会按照他们注册时的顺序被依次调用。 如果你在注册的方法内部调用 exit(), 那么所有处理会被中止,并且其他注册的中止回调也不会再被调用。
参数
1 2 3 4 5 6 7 8 9 |
callback 待注册的中止回调 中止回调是作为请求的一部分被执行的,因此可以在它们中进行输出或者读取输出缓冲区。 parameter 可以通过传入额外的参数来将参数传给中止函数 ... |
返回值
1 |
没有返回值。 |
错误/异常
1 |
如果传入的callback不是可调用的,那么将会产生一个 E_WARNING 级别的错误。 |
范例
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php function shutdown() { // This is our shutdown function, in // here we can do any last operations // before the script is complete. echo 'Script executed with success', PHP_EOL; } register_shutdown_function('shutdown'); ?> |
注释
1 2 3 4 |
Note: 在某些web server(如Apache)上,可以在中止函数内对脚本的工作目录进行修改。 Note: 如果进程被信号SIGTERM或SIGKILL杀死,那么中止函数将不会被调用。尽管你无法中断SIGKILL,但你可以通过pcntl_signal() 来捕获SIGTERM,通过在其中调用exit()来进行一个正常的中止。 |
参考
连接处理 章节