php - 在 Codeigniter 中取消设置 session 数组值

标签 php codeigniter

这是我的 session 数组:

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

[filter] => Array
    (
        [0] => new
    )

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

我目前将数组的值发送到我的 Controller ,然后陷入模型应该做什么的困境。

    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 和其他一些方法的内容,但没有成功。

最佳答案

使用 codeigniter session :

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

使用 php session :

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

关于php - 在 Codeigniter 中取消设置 session 数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10839459/

相关文章:

php - fputcsv通知: Array to string conversion

php - 在 PHP Codeigniter 中的给定时间段内,通过关注 API 有效地关注 Pinterest 用户

php - 如果数据长度可能超过 BLOB 大小,如何存储 CodeIgniter session 数据?

php - 使用 Codeigniter 更新数据库表中的字段状态

php - 是否有命名 Controller 功能的约定?

php - as3 - 格式化来自 mysql 的时间戳字符串

php - 序列化或内爆

php - 从其他表格中选择表格中的选项

php - 在 php 中的 if 语句中分配给 var

codeigniter 中的 CSS