data方法
data操作可以用来,读取、更新、增加新的数据值。data方法不进行自动过滤和验证。但是add和save方法会核对类型这些。
data方法会返回一个新的数据对象。
读取
$user = M('User'); $user->where('id=1')->find(); $data = $user->data();
更新
$user = M('User'); $data['name'] = 'lion'; $data['password'] = '123456'; $user->data($data)->where('id=8')->save();
增加新值
$user = M('User'); $data['name'] = 'lion'; $data['password'] = '123456'; $user->data($data)->add();
field方法
field方法还有一个非常重要的安全功能--字段合法性检测(注意:该功能3.1版本开始才能支持)。field方法结合create方法使用就可以完成表单提交的字段合法性检测,如果我们在表单提交的处理方法中使用了:
$Model->field('title,email,content')->create();
即表示表单中的合法字段只有title,email和content字段,无论用户通过什么手段更改或者添加了浏览器的提交字段,都会直接屏蔽。因为,其他是所有字段我们都不希望由用户提交来决定,你可以通过自动完成功能定义额外的字段写入。
join方法
join用来确立两个表之间的关系。join有下面4种类型
- inner join;默认的
- left join;
- right join;
- full join;
使用leftjoin
$user->alias('u')->join('tp_orders as o ON u.id=o.uid','left')->field('u.username,count(o.id) as order_nums')->select();
网友评论