详细信息 您现在的位置是:首页 > ThinkPHP
TP中field的使用技巧
来源:
发布时间:2022-02-18
1783 人已围观
摘要TP中field方法属于模型的连贯操作方法之一,主要目的是标识要返回或者操作的字段,可以用于查询和写入操作。
1、用于查询筛选字段
在查询操作中field方法是使用最频繁的。
$Model->field('id,title,content')->select();
2、使用SQL函数,可以在field方法中直接使用函数做数据求和、平均值等计算
$Model->field('id,SUM(score)')->select();
3、组建一些新的字段
对于一些更复杂的字段要求,数组的优势则更加明显,例如:
$Model->field(array('id','concat(name,'-',id)'=>'truename','LEFT(title,7)'=>'sub_title'))->select();
执行的SQL相当于:
SELECT id,concat(name,'-',id) as truename,LEFT(title,7) as sub_title FROM 表
4、用于写入
除了查询操作之外,field方法还有一个非常重要的安全功能--字段合法性检测。field方法结合create方法使用就可以完成表单提交的字段合法性检测,如果我们在表单提交的处理方法中使用了:
$Model->field('title,email,content')->create();
即表示表单中的合法字段只有title,email和content字段,无论用户通过什么手段更改或者添加了浏览器的提交字段,都会直接屏蔽。因为,其他是所有字段我们都不希望由用户提交来决定,你可以通过自动完成功能定义额外的字段写入。
同样的,field也可以结合add和save方法,进行字段过滤,例如:
$Model->field('title,email,content')->save($data);
如果data数据中包含有title,email,content之外的字段数据的话,也会过滤掉。
站点信息
- 电话:15226178738
- QQ:1697915848
- 邮箱:1697915848@qq.com