abstract:<?php namespace Util; use think\Db; class SysDb { //指定表名 public function table($table) { $this->where = []; $this->field = '*';
<?php namespace Util; use think\Db; class SysDb { //指定表名 public function table($table) { $this->where = []; $this->field = '*'; $this->order = ''; $this->limit = 0; $this->table = $table; return $this; } //指定查询字段 public function field($field = '') { $this->field = $field; return $this; } //指定数量 public function limit($limit) { $this->limit = $limit; return $this; } //排序 public function order($order) { $this->order = $order; return $this; } //指定查询条件 public function where($where=[]) { $this->where = $where; return $this; } //返回一条记录 public function item() { return Db::name($this->table)->field($this->field)->where($this->where)->find(); } // 返回多条记录 public function lists() { $query = Db::name($this->table)->field($this->field)->where($this->where); $this->limit && $query = $query->limit($this->limit); $this->order && $query = $query->order($this->order); return $query->select(); } //自定义索引 public function cates($index) { $query = Db::name($this->table)->field($this->field)->where($this->where); $this->limit && $query = $query->limit($this->limit); $this->order && $query = $query->order($this->order); $lists = $query->select(); if(!$lists){ return $lists; } $result = []; foreach($lists as $key=>$value){ $result[$value[$index]] = $value; } return $result; } //分页 public function pages($pageSize = 10) { $total = Db::name($this->table)->where($this->where)->count(); $query = Db::name($this->table)->field($this->field)->where($this->where); $this->order && $query = $query->order($this->order); $data = $query->paginate($pageSize,$total); return ['total'=>$total,'lists'=>$data->items(),'pages'=>$data->render()]; } //添加 public function insert($data) { return Db::name($this->table)->insertGetId($data); } //批量添加数据 public function insertAll($data) { return Db::name($this->table)->insertAll($data); } //修改 public function update($data) { return Db::name($this->table)->where($this->where)->update($data); } // 删除 public function delete() { return Db::name($this->table)->where($this->where)->delete(); } }
Correcting teacher:查无此人Correction time:2019-03-22 17:15:27
Teacher's summary:完成的不错,继续加油。传值还可以继续整合,比如判断是否是数组传值。