ThinkPHP开发框架函数详解:C方法
程序员文章站
2022-10-14 19:32:47
c方法是thinkphp用于设置、获取,以及保存配置参数的方法,使用频率较高。
了解c方法需要首先了解下thinkphp的配置,因为c方法的所有操作都是围绕配置相关的。t...
c方法是thinkphp用于设置、获取,以及保存配置参数的方法,使用频率较高。
了解c方法需要首先了解下thinkphp的配置,因为c方法的所有操作都是围绕配置相关的。thinkphp的配置文件采用php数组格式定义。
由于采用了函数重载设计,所以用法较多,我们来一一说明下。
设置参数
c('db_name','thinkphp');
表示设置db_name配置参数的值为thinkphp,由于配置参数不区分大小写,所以下面的写法也是一样:
c('db_name','thinkphp');
但是建议保持统一大写的配置定义规范。
项目的所有参数在未生效之前都可以通过该方法动态改变配置,最后设置的值会覆盖前面设置或者惯例配置里面的定义,也可以使用参数配置方法添加新的配置。
支持二级配置参数的设置,例如:
c('user.user_id',8);
配置参数不建议超过二级。
如果要设置多个参数,可以使用批量设置,例如:
$config['user_id'] = 1; $config['user_type'] = 1; c($config);
如果c方法的第一个参数传入数组,就表示批量赋值,上面的赋值相当于:
c('user_id',1); c('user_type',1);
获取参数
要获取设置的参数,可以用:
$userid = c('user_id'); $usertype = c('user_type');
如果user_id参数尚未定义过,则返回null。
也可以支持获取二级配置参数,例如:
$userid = c('user.user_id');
如果传入的配置参数为空,表示获取全部的参数:
$config = c();
保存设置
3.1版本增加了一个永久保存设置参数的功能,仅针对批量赋值的情况,例如:
$config['user_id'] = 1; $config['user_type'] = 1; c($config,'name');
在批量设置了config参数后,会连同当前所有的配置参数保存到缓存文件(或者其他配置的缓存方式)。
保存之后,如果要取回保存的参数,可以用
$config = c('','name');
其中name就是前面保存参数时用的缓存的标识,必须一致才能正确取回保存的参数。取回的参数会和当前的配置参数合并,无需手动合并。
代码如下:
class testaction extends action{ /** * $config['user_id'] = 1; $config['user_type'] = 1; c($config); 如果c方法的第一个参数传入数组,就表示批量赋值,上面的赋值相当于: c('user_id',1); c('user_type',1); 获取参数 要获取设置的参数,可以用: $userid = c('user_id'); $usertype = c('user_type'); */ public function index(){ c('user_id',102); //给参数赋值 c('user_type',107); //给参数赋值 dump(c('user_id')).'<br/>';//102=>获取设置的参数 dump(c('user_type')).'<br/>';//107=>获取设置的参数 $this->display(); } }
下一篇: 在Python中使用判断语句和循环的教程