本文实例讲述了laravel5.6 框架操作数据 Eloquent ORM用法。分享给大家供大家参考,具体如下:
建立Users模型
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<?php namespace AppModelEloquentAdmin; use IlluminateDatabaseEloquentModel; class Users extends Model { //指定表名 protected $table = "users" ; //指定id protected $primaryKey = "id" ; //指定允许批量的字段 protected $fillable =[ 'name' , 'age' ]; //指定不允许批量赋值的字段 protected $guarded =[]; //连接多数据库配置 默认使用'mysql' protected $connection = 'mysql' ; //自动维护时间戳 默认是'true' public $timestamps =true; //返回当前时间的时间戳,进入数据库,输出时,可以输出格式化好的时间 protected function getDateFormat() { return time(); } //设置之后,返回的就是数据表中的时间戳 protected function asDateTime( $value ) { return $value ; } } |
引用Users模型
1
|
use AppModelEloquentAdminUsers; |
ORM 查
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
//all() 查询所有数据 查询数据为集合 $data =Users::all(); //根据[$id]主键查询 查询一条数据 $data =Users::find( $id ); //findOrFail() 根据主键查询 如果没有查到 报错 $data =Users::findOrFail( $id ); //get() 查询所有数据 $data =Users::get(); //first() 查询第一条 $data =Users::where( 'id' , '>' , '1' )->orderBy( 'age' , 'desc' )->first(); //chunk() 每次查询指定[$num]条数 Users::chunk( $num , function ( $data ){ print_r( $data ); }); //聚合函数 //count() 统计记录条数 $num = Users:: count (); //max() 查询最大值 min() 查询最小值 $max =Users::where( 'id' , '>' ,1)->max( 'age' ); |
ORM 增
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
//save() 单增 $data = new Users(); $data ->name = 'admin_a' ; $data ->age = 100; $data ->save(); //create() 多增 $ret =Users::create([ 'name' => 'admin_b' , 'age' =>200 ]); //firstOrCreate()以属性查询数据 如果没有 新建数据 $ret =Users::firstOrCreate([ 'name' => 'admin_c' , 'age' =>300 ]); //firstOrNew() 以属性查询数据 如果没有 新建实例 如果想保存调用save() $ret =Users::firstOrNew([ 'name' => 'admin_d' , 'age' =>400 ]); $ret ->save(); |
ORM 改
1
2
3
4
5
6
7
8
9
|
//获取主键id,模型修改数据 $data =Users::find( $id ); $data ->name = 'admin_e' ; $data ->age =66; $data ->save(); //批量修改 $ret =Users::where( 'id' , '>' ,2)->update( [ 'age' =>33] ); |
ORM 删
1
2
3
4
5
6
7
8
|
//获取主键id,模型删除单条 $data =Users::find( $id ); $data -> delete (); //通过主键删除多条 $ret =Users::destroy(1,2,3); $ret =Users::destroy([4,5,6]); //删除指定条件 $ret =Users::where( 'id' , '>' ,2)-> delete (); |
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/cxx8181602/p/9698929.html