我正在创建一个电子商务应用程序,通过使用该应用程序,用户可以创建自己的电子商务商店,如bigcommerce。所以我在每个商店使用$_SESSION['store_id']
并在整个应用程序中使用该变量来控制商店。
现在,问题是用户无法在单个浏览器上访问多个商店,因为$_SESSION['store_id']
正在被覆盖。
我知道PHP会话变量就像任何其他数组一样,所以如果键是相同的,那么它将覆盖相应键的值。但是,我怎么能解决这个问题呢?
我应该创建动态PHP会话变量吗?
为了您的信息,我的应用程序几乎完成使用Yii框架,因此很难硬编码。
答案 0 :(得分:1)
您可以尝试按键存储商店
$_SESSION['stores'] = array(
'store_id' => 'session data'
);
答案 1 :(得分:0)
您可以按以下方式使用会话中的商店列表
session_start()
if( ! isset( $_SESSION['list_of_store']))
{
$_SESSION['list_of_store']=array('0'=>$store_id)
}
else
{
$stores=$_SESSION['list_of_store'];
$stores[]=$store_id;
$_SESSION['list_of_store']=$stores;
}
答案 2 :(得分:0)
您可以尝试实施某种“钥匙串”按钮,其中包括特定人员所管理的所有商店。 如果想要管理另一家商店,他/她可以点击钥匙串按钮并选择要管理的商店。