一、ThinkPHP框架的各种大写字母(A\C\R\M\D\I、、、、)方法汇总
1、I()方法:I方法就是用来获取表单提交过来的数据的,其中包括get、post、session\cookie等等。
语法规则:I('变量的类型.变量的名称',[默认值],[过滤方法])
其中包含的变量类型有:
变量类型
描述
Get
获取get提交的参数
Post
获取POST提交的参数
param
自动判断是get还是post
request
获取request提交的数据
Session
获取会话的数据
Cookie
获取cookie数据
server
类似是$_SERVER[];
globals
获取$GLOBALS参数
path
获取pathinfo模式的url参数
用法:
描述
例题
获取get提交的name变量
I('get.name')
获取get提交的name变量并指定默认值
I('get.name','李白')
获取值后并调用函数处理数据
I('get.name',' ', mysql_real_escape_string,trim);
获取所有get提交的数据
I('get.')
2、C()方法:
(1)用来获取配置文件的某个参数的值,例如:C('url_model');
(2)用来动态配置某个配置文件的参数的值,例如:C('DATA_CACHE_TIME',60);
还可以批量配置参数,例如:
$config['user_id'] = 1; $config['user_type'] = 1; C($config);
(3)批量保存设置的参数
$config['user_id'] = 1; $config['user_type'] = 1; C($config,'name');
3、A()方法:
(1)A('控制器'): 实例化控制器;例如:A('User')//默认Controller
相当于$User =new \Home\Controller\UserController();
(2)A('模块/控制器','控制器层名称'):例如:$Blog = A('Admin/Blog','Event');
相当于$Blog =new \Admin\Event\BlogEvent();
4、U()方法:动态生成url地址;格式:U('模块/控制器/操作/其他参数')
例如:U('user/index') //表示当前分组/user控制器/index操作方法
U方法的第二个参数支持数组和字符串两种定义方式,如果只是字符串方式的参数可以在第一个参数中定义,例 如:
U('Blog/cate',array('cate_id'=>1,'status'=>1))U('Blog/cate','cate_id=1&status=1')U('Blog/cate?cate_id=1&status=1')5、M()和D()方法:实例化数据模型(MODEL);区别是,D方法实例化模型类的时候通常是实例化某个具体的模型类,如果你仅仅是对数据表进行基本的CURD操作的话,使用M方法实例化的话,由于不需要加载具体的模型类,所以性能会更高。D()方法可以跨模块实例化,D('Admin/User');M()方法可以跨数据库实例化,例如:M(‘db_name.User’,'ot_'), 使用M方法实例化 操作db_name数据库的ot_user表。
6、T()方法:主要用于定位视图;即获取某个视图的位置,格式:T(模块@控制器名/操作方法名)
T('Admin@Public/menu');//表示admin模块下的public控制器/menu操作;最常用的是和display来定位到要显示的视图,$this->display(T('Admin@Public/menu'));