laravel5.6 操作数据 Eloquent ORM

建立Users模型

 1 <?php
 2 namespace App\Model\Eloquent\Admin;
 3  
 4 use Illuminate\Database\Eloquent\Model;
 5  
 6 class Users extends Model
 7 {
 8     //指定表名
 9     protected $table="users";
10  
11     //指定id
12     protected $primaryKey="id";
13  
14     //指定允许批量的字段
15     protected $fillable=['name','age'];
16  
17     //指定不允许批量赋值的字段
18     protected $guarded=[];
19 
20     //连接多数据库配置  默认使用'mysql' 
21     protected $connection = 'mysql';
22  
23     //自动维护时间戳  默认是'true' 
24     public $timestamps=true;
25  
26     //返回当前时间的时间戳,进入数据库,输出时,可以输出格式化好的时间
27     protected function getDateFormat()
28     {
29         return time();
30     }
31  
32     //设置之后,返回的就是数据表中的时间戳
33     protected function asDateTime($value)
34     {
35         return $value;
36     }
37 }

 

引用Users模型

use App\Model\Eloquent\Admin\Users;

 

ORM 查

 1 //all() 查询所有数据  查询数据为集合
 2 $data=Users::all();
 3 
 4 //根据[$id]主键查询 查询一条数据
 5 $data=Users::find($id);
 6 
 7 //findOrFail() 根据主键查询 如果没有查到 报错
 8 $data=Users::findOrFail($id);
 9 
10 //get() 查询所有数据
11 $data=Users::get();
12 
13 //first() 查询第一条
14 $data=Users::where('id','>','1')->orderBy('age','desc')->first();
15 
16 //chunk() 每次查询指定[$num]条数 
17 Users::chunk($num,function($data){
18     print_r($data);
19 });
20 
21 //聚合函数
22 //count() 统计记录条数
23 $num = Users::count();
24 
25 //max() 查询最大值   min() 查询最小值
26 $max=Users::where('id','>',1)->max('age');

 

ORM 增

 1 //save() 单增
 2 $data = new Users();
 3 $data->name = 'admin_a';
 4 $data->age = 100;
 5 $data->save();
 6 
 7 //create() 多增
 8 $ret=Users::create([
 9     'name'=>'admin_b',
10     'age'=>200
11 ]);
12 
13 //firstOrCreate()以属性查询数据 如果没有 新建数据
14 $ret=Users::firstOrCreate([
15     'name'=>'admin_c',
16     'age'=>300
17 ]);
18 
19 //firstOrNew() 以属性查询数据 如果没有 新建实例 如果想保存调用save()
20 $ret=Users::firstOrNew([
21     'name'=>'admin_d',
22     'age'=>400
23 ]);
24 $ret->save();

 

ORM 改

 1 //获取主键id,模型修改数据
 2 $data=Users::find($id);
 3 $data->name ='admin_e';
 4 $data->age =66;
 5 $data->save();
 6 
 7 //批量修改
 8 $ret=Users::where('id','>',2)->update(
 9     ['age'=>33]
10 );

 

ORM 删

 1 //获取主键id,模型删除单条
 2 $data=Users::find($id);
 3 $data->delete();
 4 
 5 //通过主键删除多条
 6 $ret=Users::destroy(1,2,3);
 7 $ret=Users::destroy([4,5,6]);
 8 
 9 //删除指定条件
10 $ret=Users::where('id','>',2)->delete();

 

 laravel5.6 操作数据查询构建器链接: 请点击跳转

 

posted @ 2018-09-25 12:42  echo曦  阅读(907)  评论(0编辑  收藏  举报