在Codeigniter中写一个数组来配置?

C. *_* E. 6 php codeigniter

我正在使用我创建的配置文件来存储用户.这肯定不是用于配置的配置,但它是一个非常小的应用程序,我认为这将是一个很好的解决方案.

我的数组看起来像这样:

$config['users'] = array(array('username' => 'username', 'password' => 'password'));
Run Code Online (Sandbox Code Playgroud)

这很好用.我可以快速轻松地检索信息.但是,如果我尝试将新数组(新用户)写入配置文件,我会收到此错误:isset中的非法偏移类型或为空

我正在使用$this->config->item('users', array('username' =>....))哪个似乎不支持数组.

如何将数组写入配置变量?还有另外一种方法吗?

编辑:好的,由于phirschy给出的答案,错误是固定的.我非常确定我可以使用config-> item(),我没有检查手册中的config-> set_item()......但是,它仍然不起作用.这是具体的代码:

        $users = $this->config->item('users');
        array_push($users, array('username' => $this->input->post('username'), 'password' => $this->input->post('password')));
        $this->config->set_item('users', json_encode($users));
        echo json_encode($users);
Run Code Online (Sandbox Code Playgroud)

这段代码是通过Ajax调用的,我有一个警告框,看看它是否正确.他们是.正如你所看到的,我已经尝试将它存储为json而不是数组....但这也不起作用.请帮忙?

谢谢

phi*_*bar 5

你必须使用'set_item'方法来编写配置项,而不是'item':

$this->config->set_item('item_name', 'item_value');
Run Code Online (Sandbox Code Playgroud)

或者在你的情况下:

$this->config->set_item('users', array(...));
Run Code Online (Sandbox Code Playgroud)