我在PHP Web应用程序中使用会话,对于单个用户,我需要存储登录会话(会话数组/变量),例如用户名,用于表示用户是否已登录的标志等。
另一个会话(数组/变量)是Search-page,其中包含一系列变量。我想把一个数组赋给$_SESSION
,作为一个包含所有值的变量。有没有办法实现这个目标?
答案 0 :(得分:1)
您可以创建会话数组,例如 -
$_SESSSION['loginSessions'] = array();
然后您可以将值loginSessions
指定为 -
$_SESSSION['loginSessions']['flag'] = true;
$_SESSSION['loginSessions']['userid'] = "...";
这会将会话变量与其他会话分开。
取消设置会话数组 -
foreach($_SESSSION['loginSessions'] as $key=>$value)
{
unset($_SESSSION['loginSessions'][$key]);
}
希望这会有所帮助。
答案 1 :(得分:0)
到目前为止你尝试了什么?您可以使用数据库中的数据作为用户的唯一标识符:
session_start();
$_SESSION['user_data'] = array('username'=>$username, 'user_id'=>$user_id);
答案 2 :(得分:0)
正如大家所说,会话是一种存储用户特定信息的方式。 有关会话和Cookie的详细信息,请参阅此here。 我也有相同的要求来管理两个不同阵列中的两个会话,即使用户以用户身份注销,第二个阵列也应该存在。我尝试的是将会话值管理到$ _cookies = $ _session然后将这些cookie恢复为会话。虽然我没有使用Yii 1.1框架尝试过这个。