实例
<?php namespace app\index\controller; use think\Db; class Query { public function find() { //读操作返回的都是二维数组,没有满足调价的记录,返回的是一个空数 //写操作返回的是受影响的记录数量,如果没有则返回0 //查询单条记录 $res = Db::table('staff')//查询的表名 ->field(['name' => '姓名','sex' => '性别','age' => '年龄'])//用数组的好处:可以给字段加上一个 别名 ->where('id','>=',10)//查询条件 格式:字段,等式,值 ->find(); dump($res); } public function select() { //查询多条记录 $res = Db::table('staff') // ->where('sex','=',0) ->where('age','>=',30) // ->where('age>=30') ->field(['name' =>'姓名','age'=>'年龄','id'=>'编号']) // ->order('age desc') ->order('age','desc') ->limit(5) ->select(); dump($res); } public function insertAll() { //新增单条记录 // $data = [ // 'name'=>'武松', // 'sex'=>0, // 'age'=>30, // 'phone_number'=>15785426 // ]; // $num = Db::table('staff') ->insert($data); // $id = Db::getLastInsID(); // return $num ? '新增'.$num.'条记录,ID='.$id : '没有记录被添加'; //data($data):将要处理的数据打包 $option[] //insertGetId() == insert() + getLastInsID() // $id = Db::table('staff')->insertGetId($data); // return $id ? '新增记录,ID='.$id : '没有记录被添加'; // $num = Db::table('staff') ->data($data)->insert(); // $id = Db::getLastInsID(); // return $num ? '新增'.$num.'条记录,ID='.$id : '没有记录被添加'; // // $data = [ ['name'=>'唐僧','sex'=>0,'age'=>50,'phone_number'=>1568798452], ['name'=>'孙悟空','sex'=>0,'age'=>48,'phone_number'=>1568798452], ['name'=>'猪八戒','sex'=>0,'age'=>45,'phone_number'=>1568798452], ['name'=>'沙僧','sex'=>0,'age'=>42,'phone_number'=>1568798452] ]; $num = Db::table('staff')->data($data)->insertAll(); return '新增'.$num.'条记录'; } public function update() { //更新操作必须是基于前置查询,不允许无条件更新 // //将年龄小于25岁都加上10岁 // $num = Db::table('staff') // ->where('age','<=',25) // ->data(['age'=>Db::raw('age+10')]) // ->update(); // $num = Db::table('staff')->where(['name'=>'唐僧'])->update(['id'=>23]); return $num ? '更新'.$num.'条记录' : '没有记录被更新'; } public function delete() { //删除也必须基于前置查询,不允许无条件删除 $num = Db::table('staff') ->where('id','>=',30) ->delete(); return $num ? '删除'.$num.'条记录' : '没有记录被删除'; } }
运行实例 »
点击 "运行实例" 按钮查看在线实例