TP框架CURD

来源:互联网 发布:财务报销流程软件 编辑:程序博客网 时间:2024/06/05 17:12

TP框架CURD

Creat数据:
如果你的数据完全是内部操作写入而不是通过表单的话(也就是说可以充分信任数据的安全),那么可以 直接使用add方法,如:

$Form = D('Form');$data['title'] = 'ThinkPHP';$data['content'] = '表单内容';$Form->add($data);

也可以支持对象方式操作:

$Form = D('Form');$Form->title = 'ThinkPHP';$Form->content = '表单内容';$Form->add();

read数据

public function read($id=0){$Form = M('Form');// 读取数据$data = $Form->find($id);if($data) {$this->assign('data',$data);// 模板变量赋值}else{$this->error('数据错误');}$this->display();}

update数据

public function edit($id=0){$Form = M('Form');$this->assign('vo',$Form->find($id));$this->display();}public function update(){$Form = D('Form');if($Form->create()) {$result = $Form->save();if($result) {$this->success('操作成功!');}else{$this->error('写入错误!');}}else{$this->error($Form->getError());}}

当然亦可以这样:

$Form = M("Form");// 要修改的数据对象属性赋值$data['id'] = 5;$data['title'] = 'ThinkPHP';$data['content'] = 'ThinkPHP3.2.3版本发布';$Form->save($data); // 根据条件保存修改的数据

save方法会自动识别数据对象中的主键字段,并作为更新条件。当然,你也可以显式的传入更新条件:

$Form = M("Form");// 要修改的数据对象属性赋值$data['title'] = 'ThinkPHP';$data['content'] = 'ThinkPHP3.2.3版本发布';$Form->where('id=5')->save($data); // 根据条件保存修改的数据

也可以改成对象方式来操作:

$Form = M("Form");// 要修改的数据对象属性赋值$Form->title = 'ThinkPHP';$Form->content = 'ThinkPHP3.2.3版本发布';$Form->where('id=5')->save(); // 根据条件保存修改的数据

有的时候可以直接使用setFiled

$Form = M("Form");// 更改title值$Form->where('id=5')->setField('title','ThinkPHP');

对于统计字段,系统还提供了更加方便的setInc和setDec方法。 例如:

$User = M("User"); // 实例化User对象$User->where('id=5')->setInc('score',3); // 用户的积分加3$User->where('id=5')->setInc('score'); // 用户的积分加1$User->where('id=5')->setDec('score',5); // 用户的积分减5$User->where('id=5')->setDec('score'); // 用户的积分减1

delete 数据
删除数据很简单,只需要调用delete方法,例如:

$Form = M('Form');$Form->delete(5);

表示删除主键为5的数据,delete方法可以删除单个数据,也可以删除多个数据,这取决于删除条件,例 如:

$User = M("User"); // 实例化User对象$User->where('id=5')->delete(); // 删除id为5的用户数据$User->delete('1,2,5'); // 删除主键为1,2和5的用户数据$User->where('status=0')->delete(); // 删除所有状态为0的用户数据

delete方法的返回值是删除的记录数,如果返回值是false则表示SQL出错,返回值如果为0表示没有删除任 何数据。

原创粉丝点击