在代码点火器中取消设置会话数组值


unsetting session array value in Codeigniter

这是我的会话数组:

[inactivefilter] => Array
    (
        [0] => add
        [1] => new
    )
[filter] => Array
    (
        [0] => new
    )
"

添加"和"新建"由用户动态生成。

我目前将数组的值发送到我的控制器,然后卡在模型应该做什么上。

    public function clear_filter()
    {
        $i = $this->input->post('filtervalue');
        $this->thread_model->clear_filter($i);
    }

$i等于他们点击的任何值。 因此,如果他们单击"添加"$i = add

我需要根据$i的值取消设置活动过滤器和过滤器。 有没有简单的方法可以做到这一点?

我读过array_splice、array_diff和其他一些方法,但没有成功。

使用代码点火器会话:

$filter = $this->session->userdata('filter');
$index = array_search($i, $filter);
unset($filter[$index]);
$this->session->set_userdata('filter', $filter);

使用 php 会话:

$index = array_search($i, $_SESSION['filter']);
unset($_SESSION['filter'][$index]);