萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP register

PHP register

   這篇文章主要介紹了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 '

';

 

  print_r(error_get_last());

  echo '

';

 

  }

  file_put_contents('D:practisephpErrorerror.txt', 'this is a test');

  die('腳本結束');

  }

  }

  register_shutdown_function(array(new Shutdown(), 'endScript'));

  //錯誤測試

  echo md6();

  執行,輸出:

   代碼如下:

  ( ! ) Fatal error: Call to undefined function md6() in D:practisephpErrorshutdown.php on line 18

  Array

  (

  [type] => 1

  [message] => Call to undefined function md6()

  [file] => D:practisephpErrorshutdown.php

  [line] => 18

  )

  腳本結束

  代碼如下:

  D:practisephpErrorerror.txt:

  this is a test

  注意:register_shutdown_function 方法是從內存中調用的,因此在使用 file_put_contents 方法時,第一個參數一定要使用絕對路徑。

copyright © 萬盛學電腦網 all rights reserved