码迷,mamicode.com
首页 > Web开发 > 详细

了解PHP中的register_shutdown_funcion

时间:2016-11-26 23:52:16      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:ade   cti   lock   exit   word   new   proc   print   执行   

(PHP 4, PHP 5, PHP 7)
register_shutdown_function — Register a function for execution on shutdown
执行PHP文件的时候,php会拉起一个进程或者线程。当这个进程或者线程执行完毕、或者异常中断,或使用exit()、die() 函数中断的时候,就调用register_shutdown_function 中定义的函数。我认为这个功能更类似于钩子,这个函数建立在PHP的线程或者进程的监控之上。

可以通过下面的例子清晰的看到该函数的作用:

<?php
header("content-type:text/html;chaset=utf-8");

register_shutdown_function(‘user_shutdown‘);
register_shutdown_function(‘user_shutdown_2‘);

function user_shutdown()
{
echo "<font color=‘red‘>hello world</font>";
echo "<br/>";
}

function user_shutdown_2()
{
echo "<font color=‘orange‘>Are You OK</font>";
echo "<br/>";
}

echo 11111;
echo ‘<br/>‘;
echo 22222;
echo ‘<br/>‘;

class Demo
{
public function __construct()
{
register_shutdown_function(array($this, ‘user_shutdown_3‘));
}

public function getName()
{
echo "Hello China<br/>";
}

public function user_shutdown_3()
{
echo "I‘m class shutdown method<br/>";
}


}

$DemoClass = new Demo();
$DemoClass->getName();

执行该文件,最后的结果如下:

11111
22222
Hello China
hello world
Are You OK
I‘m class shutdown method

由此我们可以得出,在一个进程或者线程之上可以注册多个register_shutdown_function 函数。并且可以在类中注册该函数。类中该函数必须对外部暴露,必须使用public关键字修饰。

了解PHP中的register_shutdown_funcion

标签:ade   cti   lock   exit   word   new   proc   print   执行   

原文地址:http://www.cnblogs.com/roverliang/p/6105467.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!