【发布时间】:2016-06-26 05:53:23
【问题描述】:
我有以下代码
问题在于 unset($_SESSION['variable']); 不仅取消了整个 $_SESSION 的设置,而且还停止了自己的 if 语句运行,因为 echo 或调用的函数都没有做任何事情,如果删除了未设置的行,这两个都可以正常工作.
if ( isset($_SESSION['variable']) ) {
echo 'yay';
$boxes['error'] = $this->function($_SESSION['variable']);
unset($_SESSION['variable']);
}
我从来没有见过这个
【问题讨论】:
-
Unset 基本上完成了变量。您应该做的只是删除该值。并检查变量是否为空。
-
我发现这是因为我没有将
exit();行添加到另一个页面上的header('location: ')调用中,因此会话已经被取消设置。所以这个 if 语句现在可以正常工作了 -
@milky_jay:感谢您的评论。它帮助我解决了 Wordpress 中的一个问题,即我的会话未设置得太早,因为我没有在
wp_safe_redirect之后添加exit();。也许这也有助于某人:)。
标签: php session-variables unset