我正在尝试使用以下代码重置会话:
<?=
$_SESSION['pettySuccess']??'';
(($_SESSION['pettySuccess']??'')=='') ?'': unset($_SESSION['pettySuccess']);
?>
我的代码背后的想法是让 pettySuccess 会话在其不评估为“ ”时重置会话 但在这里我收到语法错误。奇怪的是当我改变 unset() 方法时 到 session_unset(),我不再有语法错误,我现在得到的错误是“session_unset() 不接受任何属性”,我的意图是永远不会重置所有会话变量。
unset()
是一个语句而不是一个函数,因此它不能直接在三元运算符中使用。您可以使用以下代码:
if (isset($_SESSION['pettySuccess']) && $_SESSION['pettySuccess'] !== '') {
unset($_SESSION['pettySuccess']);
}