0

すべてのページが読み込まれ、ページがブラウザーにレンダリングされた後、php セッション変数の設定を解除する最良の方法を見つけようとしています。複数のページをレンダリングする必要があるページがあります。ページが完成する直前に何かをするようにphpに指示する組み込みのphp関数があるかどうかを知りたいです。または、これを行うための最良の方法/プラクティスは何ですか?

編集##ここに私が追加したものがあります...

function unsetHIST_ID(){unset($_SESSION['Hist_CID']);}
register_shutdown_function('unsetHIST_ID');
4

3 に答える 3

1

.ini ディレクティブauto_append_fileがあり、指定されている場合、PHP によって最後に解析されます。require('somefile.php')基本的には、自分でファイルの最後のコマンドとして配置したかのように扱われます。

于 2012-10-16T15:23:06.273 に答える
1

次のようなものが必要です

register_shutdown_function ('my_atexit_function');

または多分あなたはこれを行うことができます

ob_start('content_handler');

最初の関数は終了する直前に呼び出されますが、これはまさにあなたが求めたものではありません。2 番目は出力の直前ですが、これにより、既に静的になっている出力を使用して何かを行うことができます。

でも一緒に行きregister_shutdown_functionます。

于 2012-10-16T15:24:23.367 に答える
1

なぜこれが必要なのかわかりませんが、スクリプトの後に関数を実行したい場合、execution finishesまたはexit()呼び出された場合は、register_shutdown_functionを確認する必要があります

function shutdown() {
    echo "Am dead anyway";
}

register_shutdown_function('shutdown');

echo "<pre>";
echo "Hello am Alive",PHP_EOL;

出力

Hello am Alive
Am dead anyway <---------------This would always run last 
于 2012-10-16T15:23:08.617 に答える