首页 > 解决方案 > 如何使用codeigniter中的会话动态地将新数组添加到现有数组中

问题描述

我想在每个函数调用的同一个会话中存储多个数组。我的函数如下所示。

函数 store_item($param='') {

    $count = count($this->session->userdata('items_array'));
    echo $count;
    $count++;
    $item_id = $this->input->post('product_id');
    $data[][$count] = $this->Quotation_model->get_data_single($item_id);


    $this->session->set_userdata('items_array',$data);


}

我想要这个结果

数组 ( [0] => 数组 ( [0] => 数组 ( [name] => 检查 [category_id] => 1 [supplier_id] => ) ) 数组 ( [1] => 数组 ( [name] => 检查[category_id] => 1 [supplier_id] => ) ) 数组 ( [2] => 数组 ( [name] => 检查 [category_id] => 1 [supplier_id] => ) ))

标签: arrayscodeignitersessionconcatenation

解决方案


试试这个,你每次都覆盖会话数组

$data = $this->session->userdata('items_array');
echo $count;
$count++;
$item_id = $this->input->post('product_id');
$data[] = $this->Quotation_model->get_data_single($item_id);
$this->session->set_userdata('items_array',$data);

在这里,您首先将会话详细信息添加到变量,然后将新项目详细信息添加到同一变量以使用新数据再次设置会话


推荐阅读