您的位置:首页 > 编程语言 > PHP开发

ThinkPHP快速入门3-连贯操作,变量

2015-11-07 16:22 591 查看

连贯操作

例:假如我们现在要查询一个User表的满足状态为1的前10条记录,并希望按照用户的创建时间排序 ,代码如下:

$User->where('status=1')->order('create_time')->limit(10)->select();


注:

1)除了select方法必须放到最后一个外(因为select方法并不是连贯操作方法),连贯操作的方法调用顺序没有先后。

2)连贯操作的结果不会带入以后的查询

用法

WHERE:用于查询或者更新条件的定义

TABLE:定义要操作的数据表名称,动态改变当前操作的数据表名称,需要写数据表的全名,包含前缀,可以使用别名和跨库操作(一般情况下,无需调用)

DATA:可以用于新增或者保存数据之前的数据对象赋值

FIELD: 用于定义要查询的字段

1)如果需要显式的传入所有的字段

$Model->field(true)->select();


2)字段排除方式

$Model->field('status',true)->select();


表示获取除了status之外的所有字段

ORDER:用于对操作结果排序

LIMIT:用于定义要查询的结果限制(支持所有的数据库类型)

PAGE:用于定义要查询的数据分页

GROUP:用于数据库的group查询支持

HAVING:用于数据库的having查询支持

JOIN: 用于数据库的join查询支持

UNION:用于数据库的union查询支持。每个union方法相当于一个独立的SELECT语句。

DISTINCT:查询数据的时候进行唯一过滤

LOCK:用于查询或者写入锁定

VALIDATE:用于数据的自动验证

AUTO:用于数据自动完成

SCOPE:用于模型的命名范围

FILTER:用于数据的安全过滤

变量

获取变量

I('变量类型.变量名/修饰符',['默认值'],['过滤方法'],['额外数据源'])


注意:

1. 变量类型不区分大小写。

2. 变量名则严格区分大小写。

3. 默认值和过滤方法均属于可选参数

例:

I('post.name','','htmlspecialchars'); // 采用htmlspecialchars方法对$_POST['name'] 进行过滤,如果不存在则返回空字符串
I('session.user_id',0); // 获取$_SESSION['user_id'] 如果不存在则默认为0
I('cookie.'); // 获取整个 $_COOKIE 数组
I('server.REQUEST_METHOD'); // 获取 $_SERVER['REQUEST_METHOD']


param变量类型是框架特有的支持自动判断当前请求类型的变量获取方式

变量过滤

如果你没有在调用I函数的时候指定过滤方法的话,系统会采用默认的过滤机制(由DEFAULT_FILTER配置)

变量修饰符

I('变量类型.变量名/修饰符');


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  thinkphp