首頁 > php教程 > php手册 > PHP register_shutdown_function()函数的使用示例

PHP register_shutdown_function()函数的使用示例

WBOY
發布: 2016-06-13 09:00:31
原創
924 人瀏覽過

PHP register_shutdown_function()函数的使用示例

   这篇文章主要介绍了PHP register_shutdown_function()函数的使用示例,当我们的脚本执行完成或者意外死掉导致 php 执行即将关闭时,register_shutdown_function()这个函数会被调用,需要的朋友可以参考下

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

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

  【使用场景】

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

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

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

  shutdown.php

   代码如下:

  

  header("content-type:text/html;charset=utf-8");

  class Shutdown{

  public function endScript(){

  if(error_get_last()){

  echo '

';<p> </p>
<p>  print_r(error_get_last());</p>
<p>  echo '</p>
登入後複製

';

 

  }

  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 方法时,第一个参数一定要使用绝对路径。

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門推薦
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板