TP框架CURD
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表示没有删除任 何数据。
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: 如何向弱智程序员解释区块链
- 下一篇: 纯css修改下拉列表select的默认样式