存储数据以配置文件

时间:2012-12-20 11:22:43

标签: php codeigniter

我在尝试将数据存储到Codeigniter

中的配置文件时遇到了一些问题

问题

会话数据增长太大,似乎超过了4kb,即cookie最大大小。因此,例如flashdata停止工作。

为什么会发生

似乎配置变量在以下对象内的会话中添加了4次:

  • CI_Hooks对象(应该关闭)
  • CI_Utf8对象
  • MY_Router对象(用于将'_'替换为网址中的'-'
  • CI_URI对象

有趣的是,即使在配置文件中关闭了功能,也会出现hooks对象:$config['enable_hooks'] = FALSE;

问题

1 - 如何在没有在会话中乘以的情况下存储配置数据? 2 - 另外,为什么在配置中禁用钩子对象似乎已启用?

其他详情

  • CI_VERSION 2.1.3
  • 会话库已自动加载
  • 会话存储在db
  • 会话Cookie已加密
  • 配置文件加载在使用它们的页面中,主要是在构造函数
  • 配置数据不是很大,如果不是乘以
  • ,则非常适合4kb

Session data ( print_r($this->session) ) : [hooks] => CI_Hooks Object ( [enabled] => [hooks] => Array ( ) [in_progress] => ) [config] => CI_Config Object ( [config] => Array...

在此先感谢您的帮助,我们将不胜感激......

1 个答案:

答案 0 :(得分:1)

如果您遇到CI会话问题(实际上只是cookie),我建议您使用不同的会话库。

This one uses native PHP sessions,因此您不会遇到4kb限制的问题,或者如果您真的想继续使用CI会话,那么请使用数据库函数来存储值。