PHP関数register_shutdown_functionの使用例
1425 ワード
場合によっては、phpのregister_shutdown_function関数はこの機能を実現するのに役立ちます.
関数の概要
PHPプログラムの実行が完了すると、自動的にregister_を実行するshutdown_function関数です.この関数には、後続の作業を誰が処理するかを指定するパラメータが必要です.このうち、プログラムの実行が完了したのは、以下のような状況に分けられます.
1つ目:phpコード実行中にエラーが発生しました
2つ目はphpコードが順調に実行されたことです
3つ目:phpコード実行タイムアウト
4つ目:ページがユーザーによって強制的に停止される
手順の使用
register_shutdown_function関数の使用は非常に簡単で、最大2ステップでよい.
1.phpクラスをカスタマイズします.名前はCustomHandleです.php、内は以下の通りです.
2.登録関数の導入
プログラムの入り口で、CustomHandleを導入します.phpファイル、同時にregister_を登録shutdown_function関数は、次のとおりです.
この場合、phpコードの実行が成功するかどうかにかかわらず、最後にCustomHandleクラスのsystemErrorメソッドが使用されます.
関数の概要
PHPプログラムの実行が完了すると、自動的にregister_を実行するshutdown_function関数です.この関数には、後続の作業を誰が処理するかを指定するパラメータが必要です.このうち、プログラムの実行が完了したのは、以下のような状況に分けられます.
1つ目:phpコード実行中にエラーが発生しました
2つ目はphpコードが順調に実行されたことです
3つ目:phpコード実行タイムアウト
4つ目:ページがユーザーによって強制的に停止される
手順の使用
register_shutdown_function関数の使用は非常に簡単で、最大2ステップでよい.
1.phpクラスをカスタマイズします.名前はCustomHandleです.php、内は以下の通りです.
";
$message .= " :" . $error['message'] . $separator;
$message .= " :" . $error['file'] . $separator;
$message .= " :" . $error['line'] . $separator;
$message = str_replace($separator, '
', $message);
header('Location:http://'.$_SERVER['HTTP_HOST'].'/error.php');
exit;
}else{
//
}
}
}
2.登録関数の導入
プログラムの入り口で、CustomHandleを導入します.phpファイル、同時にregister_を登録shutdown_function関数は、次のとおりです.
require 'CustomHandle.php';
register_shutdown_function(array('com\antp\CustomHandle','systemError'));
この場合、phpコードの実行が成功するかどうかにかかわらず、最後にCustomHandleクラスのsystemErrorメソッドが使用されます.