我的 header.php 中有以下代码,它从 $_SESSION 获取消息并将其显示给用户,我在控制器中设置了“消息”会话变量。
<div id="messages">
<?php if (isset($_SESSION["message"])):?>
<span class="message"> <?php echo "message is ".$_SESSION["message"]?>
</span>
<?php endif ?>
</div>
这工作正常并显示消息。现在我想从会话中删除“消息”变量,以便仅在一个请求中调用它,所以我添加了行 unset($_SESSION["message"]); 在结束之前,所以代码变为:
<div id="messages">
<?php if (isset($_SESSION["message"])):?>
<span class="message"> <?php echo "message is ".$_SESSION["message"]?>
</span>
<?php
unset($_SESSION["message"]);
else :
//for debugging
echo "There is no message";
endif
?>
</div>
现在总是没有打印消息,而是总是打印“没有消息”!消息变量设置正确,正如我在删除此unset($_SESSION["message"]);
行时所说,显示消息。
顺便说一句,我没有使用框架,只是普通的 php。有什么帮助吗?