【问题标题】:Codeigniter - unset session data (inside user_data array)Codeigniter - 未设置的会话数据(在 user_data 数组内)
【发布时间】:2014-01-25 21:03:35
【问题描述】:

所以我的会话中有一个像这样的“购物车”数组

Array
(
[session_id] => 4a5a5dca22728fb0a84364eeb405b601
[ip_address] => 127.0.0.1
[user_agent] => Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7;
[last_activity] => 1303142623
[cart] => Array( [1]=1;
                 [2]=3;
                )
)

我的问题,我想取消设置购物车数组中的一个 id..但不是整个“购物车”数据

$this->session->unset_userdata($id); //$id as in [cart][$id]
//or even like this below
$tmp = $this->session->userdata('cart');          
$this->session->unset_userdata($tmp[$pid]);

我尝试了上述方法,但它没有做任何事情。救命!

PS:我通过 uri 传递 $id 并且可以很好地回显 $id

================================================ ===== 更新: 感谢您的回复,但我以某种方式解决了我的问题。我是这样做的

$tmp = $this->session->userdata('cart');          
unset($tmp[$pid]);
$this->session->set_userdata('cart',$tmp);

【问题讨论】:

标签: arrays codeigniter session


【解决方案1】:

你可以试试这个,

$tmp = $this->session->userdata('cart');
unset($tmp[$id]);
$this->session->set_userdata('cart', $tmp);

【讨论】:

    【解决方案2】:

    你可以取消设置为

    $tmp = $this->session->userdata('cart');          
    unset($tmp[$pid]);
    $this->session->set_userdata(array("cart"=>$tmp));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多