这是我的会话数组:
[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的值来取消设置activefilter和filter。有没有简单的方法呢?
我已经阅读过有关array_splice,array_diff和其他一些方法,但没有成功。
答案 0 :(得分:4)
使用codeigniter会话:
$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]);