Php codeigniter会话中的多个阵列
我试图在CodeIgniter会话中获得多个阵列:Php codeigniter会话中的多个阵列,php,arrays,codeigniter,session,Php,Arrays,Codeigniter,Session,我试图在CodeIgniter会话中获得多个阵列: if ($this->session->has_userdata('products')){ $outerarray = array( $array = array( 'id' => $id, 'quantity' => 1 )); array_push($outerarray, $this->session->userdat
if ($this->session->has_userdata('products')){
$outerarray = array(
$array = array(
'id' => $id,
'quantity' => 1
));
array_push($outerarray, $this->session->userdata('products'));
$data['products'] = $outerarray;
$this->session->set_userdata($data);
} else {
$data['products'] = array(
'id' => $id,
'quantity' => 1
);
$this->session->set_userdata($data);
}
else部分工作正常,但是当会话中已经有一个数组时,它会在会话中这样放置它:
array(2) { [0]=> array(2) { ["id"]=> string(1) "7" ["quantity"]=> int(1) } [1]=> array(2) { ["id"]=> string(1) "1" ["quantity"]=> int(1) } }
我真正想看到的是:
array(2) { ["id"]=> string(1) "7" ["quantity"]=> int(1) } array(2) { ["id"]=> string(1) "1" ["quantity"]=> int(1) }
会话中是否可能只有
$outeraray
的内容,而不是整个$outeraray
本身?您必须这样做:
$data = array('id' => 1, 'quantity' => 2);
if (isset($_SESSION['products'])) {
array_push($_SESSION['products'], $data);
}
else {
$_SESSION['products'] = array($data);
}
尝试此阵列推送($会话['products',$data)<代码>$this->session->set_userdata($data[0])代码>?