ホームページ >バックエンド開発 >PHPチュートリアル >register_shutdown_function関数の詳細説明

register_shutdown_function関数の詳細説明

步履不停
步履不停オリジナル
2019-06-06 14:43:593307ブラウズ

register_shutdown_function関数の詳細説明

# PHP の開発、テスト中、オンライン中、さまざまな状況に応じてエラーと例外処理のニーズを設定できます。 ##エラーおよび例外処理用の 3 つの関数の設定

register_shutdown_function(array(‘Debug’,'fatalError’)); //定义PHP程序执行完成后执行的函数
set_error_handler(array(‘Debug’,'appError’)); // 设置一个用户定义的错误处理函数
set_exception_handler(array(‘Debug’,'appException’)); //自定义异常处理。

register_shutdown_function() 関数について話しましょう。

関数
:register_shutdown_function() 関数は、プログラム実行完了後に実行される関数を実装することができ、その機能はプログラム実行完了後の後続の動作を実装することです。プログラムの実行中に実行タイムアウトや強制シャットダウンが発生する可能性がありますが、この場合のデフォルトのプロンプトは非常に不親切です。 register_shutdown_function() 関数を使用して例外をキャッチすると、より分かりやすいエラー表示方法を提供できます。同時に、実行完了後の一時ファイルなどの一時データのクリーニングなど、一部の機能のフォローアップ操作も実装できます。

呼び出し条件は次のように理解できます:

1. ユーザーによってページが強制停止されたとき2. プログラムが実行されたときコードが時間切れになりました

3. PHP コードの実行が完了すると、コードの実行中に例外、エラー、警告が発生します

例の説明

1. 関数呼び出しの簡単な例

<?php
    function test() {
        echo "test()";
    }
    register_shutdown_function(array("test"));
    echo "show: ";
 ?>
この出力例

show: test()

この関数の機能は、スクリプトを終了する前に、登録された関数を呼び出し、その関数を実行することです。

2. クラス

<?php
class ClassDemo {
    public function __construct() {
        register_shutdown_function(array($this, "f"));
    }
 
    public function f() {
        echo "f()";
    }
}
 
$demo = new ClassDemo();
echo "before </br>";
?>

のパラメーターとして配列を使用します。 出力:

before
f()

3. パラメーターを使用した例:

<?php
function f($str) {
        echo $str."<br>";
}
  
register_shutdown_function("f","hello");
 
class ClassDemo {
    public function __construct() {
        register_shutdown_function(array($this, "f"),"hello");
    }
 
    public function f($str) {
        echo "f():".$str;
    }
}
 
$demo = new ClassDemo();
echo "before </br>";  
?>

Notes

#1、 register_shutdown_function() 関数 は繰り返し呼び出すことができます が、
実行順序は登録順序と同じです

2 、 register_shutdown_function() 関数 を呼び出す前に exit() 関数呼び出し がある場合、 register_shutdown_function() 関数は実行されません
3、PHP4## 以降# 登録関数パラメータの受け渡しをサポートします PHP ビデオ チュートリアル 4、Apache などの一部のサーバーでは、
register_shutdown_function() 関数で現在のディレクトリを変更できます5, register_shutdown_function ()関数はヘッダーの送信後に実行されます

以上がregister_shutdown_function関数の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。