我正在尝试找出解除php会话变量的最佳方法,在所有页面都已加载并且页面将呈现给浏览器之后。我有一个页面,其中包括&需要渲染多个页面。我想知道是否有内置的php函数会告诉php在页面完成之前做些什么。或者最好的方法/做法是什么?
EDIT ## 这是我添加的......
function unsetHIST_ID(){unset($_SESSION['Hist_CID']);}
register_shutdown_function('unsetHIST_ID');
答案 0 :(得分:1)
有.ini指令auto_append_file,如果指定则由PHP最后解析。它基本上被视为你自己将require('somefile.php')
作为文件中最后一个命令。
答案 1 :(得分: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
答案 2 :(得分:1)
你需要像
这样的东西register_shutdown_function ('my_atexit_function');
或者你可以用
来做到这一点ob_start('content_handler');
第一个函数将在退出前立即调用,这不是您要求的;在输出之前的第二个,但是这允许你对已经变成静态的输出做一些事情。
我会选择register_shutdown_function
。