CodeIgniter配置之config

时间:2021-02-23 05:52:33

配置说明

$config['language']:指定项目语言包。需要注意的时Codeigniter自带的类库错误提示语言包位于/system/language/english/目录下,当这里配置非english时, 如果需要用到这些类库,则需要拷贝语言包到指定的目录中,否则会出现load出错。

$config['charset']:设置系统使用的编码,在某些需要指定编码的函数中会用到,系统、数据库统一编码即可。

$config['enable_hooks']:钩子开关控制,设置为true表示允许使用钩子,否则不允许。

$config['subclass_prefix']:设置自定义类库、函数的前缀,默认为MY_,比如需要重写language helper中的lang方法时,只需要在helper目录下创建MY_language_herper.php,并实现lang函数即可实现“重载”。 这里MY_即为subclass_prefix中定义的值。

$config['permitted_uri_chars']:设置URL中允许的字符。

$config['log_threshold']:设置日志记录等级,为0则关闭日志记录,为4则记录所有信息,一般情况设置为1即可。设置之后需要确认下logs目录是否有写入权限。

$config['proxy_ips']:当服务器使用了代理时,REMOTER_ADDR获取的就是代理服务器的IP了,需要从 HTTP_X_FORWARDED_FOR、HTTP_CLIENT_IP、HTTP_X_CLIENT_IP、 HTTP_X_CLUSTER_CLIENT_IP或其他设定的值中获取。这里设定的就是代理服务器的IP,逗号分隔。

$config['encryption_key']:加密值,如果要用到CI自带的SESION则必须要设置该值。CI的自带SESSION存储与Cookie中,为安全起见,作加密处理。

配置读取

CI初始化开始过程中会通过get_config函数加载config.php文件,同时也提供了config_item来获取config的值,如:

1
echo config_item('charset');

CI也提供了一个配置类用来维护配置文件。也可以通过下面方式来获取和设置config的值,当设置之后调用get_config的结果同样会变化,所以可以在某些逻辑前修改config的值。

1
2
3
4
//获取config中配置的charset值
echo $this->config->item('charset');
//重新设置config中charset的值
$this->config->set_item('charset', 'gbk')

转自: http://pengbotao.cn/codeigniter-config-other.html