php数据的增删改查常用方法总结

本文介绍ThinkPHP框架下数据库的基本操作,包括查询、添加、更新和删除数据的具体实现方法,并提供了多个实用示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文记录了一些本人学习的时候的增删改查的常用操作,适合新手阅读:

实例化模型的方法

1  $user = new \Model\UserModel();
2  $user = M(User);
3  $user = D(User); // User为表名字()模型名

选择模型

1 $user= M(User)->select(); 
  $this->assign("user",$user);
  $this->display();

2 $user= M(User)->select(2); //查询id为2的数据,2为id 

3  $user = M(User)->where('name like "%名字%"')->select(); //查询姓名包含 名字 的数据

4  $user = M(User)->where('name like "%zy%" and age > 18')->select(); //查询姓名包含 名字 且 年龄大于18 的数据

5  $user = M(User)->limit(2,5)->select(); //查询第二到第五条数据

6  $user = M(User)->limit(2,5)->order("name desc")->select(); //降序查询第二到第五条数据

7  $user = M(User)->field('name,sex')->select(); //只查询姓名和性别

向表中添加数据

1 最直观的方法
 public function add(){
        if(!empty($_POST)){
            $user['name'] = $_POST["name"];
            $user['sex'] = $_POST['sex'];
            $user['tel']  = $_POST['tel'];
            $user['create_date'] = date("Y-m-d H:i:s");
            $msg = "添加失败";
            if(M("user")->add($user))
                $msg = "添加成功";
            $this->redirect(show_list,null,3,$msg);
        }
        $this->display();  
    }

2 使用create方法,前提条件是传过来的数据名必须和数据库字段名称一样 
public function add(){
        $user = M('user');
        if(!empty($_POST)){
            $user = $user->create();
            $user['create_date'] = date("Y-m-d H:i:s");
            $msg = "添加失败";
            if(M("user")->add($user))
                $msg = "添加成功";
            $this->redirect(show_list,null,3,$msg);
        }
        $this->display();  
    }

3 使用系统的success和error方法跳转页面
public function add(){
        $user = M('user');
        if(!empty($_POST)){
            $user = $user->create();
            $user['create_date'] = date("Y-m-d H:i:s");
            if(M("user")->add($user))
                $this->success("添加成功",show_list,3);
            else
                $this->error("添加失败");
        }

4 使用I()方法完成添加
public function add(){
        if(!empty($_POST)) {
            if (M("user")->add(I("post."))) 
                $this->success("添加成功", show_list, 3);
            else
                $this->error("添加失败");
        }
        $this->display();  
    }

更新数据update 用来更新数据
需要在update页面添加隐藏的id输入框将id传过来

public function update($id){
        if(IS_POST){
            $user = M('user');
            $data = $user->create();
            $data['create_date'] = date("Y-m-d H:i:s");
            $msg = "修改失败";
            if($user->save($data))
                $msg = "修改成功";
            $this->redirect(show_list,null,3,$msg);
        }
        $user = M('user')->find($id);
        $this->assign('user',$user);
        $this->display();
    }

删除数据

public function delete($id){
        $msg = "删除失败";
        if(M('user')->delete($id))
            $msg = "删除成功";
        $this->redirect(show_list,null,1,$msg);
    }

页面上的传值方式

<a href="__CONTROLLER__/update/id/{$vo.id}">修改</a>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值