当前位置: 移动技术网 > IT编程>开发语言>PHP > PHP register_shutdown_function()函数的使用示例

PHP register_shutdown_function()函数的使用示例

2018年06月16日  | 移动技术网IT编程  | 我要评论

湖北电视台垄上频道,洗头妹们乐疯了,援助交际俱乐部

通过 register_shutdown_function 方法,可以让我们设置一个当执行关闭时可以被调用的另一个函数。

也就是说,当我们的脚本执行完成或者意外死掉导致 php 执行即将关闭时,我们的这个函数会被调用。

【使用场景】

① 页面被(用户)强制停止

② 程序代码意外终止或超时

③ php4 中没有析构函数,可以使用该函数模拟析构函数

shutdown.php

<?php
header("content-type:text/html;charset=utf-8");
class shutdown{
  public function endscript(){
    if(error_get_last()){
      echo '<pre>';
      print_r(error_get_last());
      echo '</pre>';
    }
    file_put_contents('d:\practise\php\error\error.txt', 'this is a test');
    die('脚本结束');
  } 
}

register_shutdown_function(array(new shutdown(), 'endscript'));

//错误测试
echo md6();

执行,输出:

复制代码 代码如下:

( ! ) fatal error: call to undefined function md6() in d:\practise\php\error\shutdown.php on line 18

 array
(
    [type] => 1
    [message] => call to undefined function md6()
    [file] => d:\practise\php\error\shutdown.php
    [line] => 18
)
脚本结束

复制代码 代码如下:

d:\practise\php\error\error.txt:
this is a test

注意:register_shutdown_function 方法是从内存中调用的,因此在使用 file_put_contents 方法时,第一个参数一定要使用绝对路径。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网