は、私が実行した場合:ダイは全体のプロセスを停止しているためdie()はPHPでセッションを終了しますか?
die();
それはまた、効果的
session_write_close();
を呼ぶだろうか?
は、私が実行した場合:ダイは全体のプロセスを停止しているためdie()はPHPでセッションを終了しますか?
die();
それはまた、効果的
session_write_close();
を呼ぶだろうか?
番号:http://www.php.net/manual/en/function.exit.php常に出口が呼び出された場合でも 実行されます
シャットダウン機能やオブジェクトのデストラクタ(ためにはダイは終了に相当します)。
ただし、session_write_closeはシャットダウン機能ではありません。あなたが死んでもそれは走りません。私はあなたにsession_register_shutdownを調べることをお勧めします。これにより、session_write_close()がシャットダウン関数として登録されます。この場合、 "die"で実行されます。
詳細情報:http://www.php.net/manual/en/function.session-register-shutdown.php
スクリプトの実行を終了します。シャットダウン関数とオブジェクトデストラクタは、exitが呼び出されても常に実行されます。
したがって、phpはまだクリーンアップルーチンになります。とにかく、スクリプトのシャットダウン時に何かカスタムをしたい場合は、register_shutdown_function
を使ってシャットダウン機能を登録することができます。
function shutdown()
{
//Some custom clean-up, logging and so on
}
register_shutdown_function('shutdown');
注:カスタムシャットダウン機能を登録場合致命的なエラーが発生したときに、それはとも呼ばれます。あなたがPHPのページで見ることができるように
はい、スクリプト終了と同じ方法です。オブジェクトデストラクタも実行されます。私はauto_append_fileについてはっきりしていませんが、 –
セッションは終了しません。死ぬ();スクリプトの実行を停止するだけです。 – ripa