温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Laravel中ORM数据model操作的示例分析

发布时间:2021-08-26 11:16:42 来源:亿速云 阅读:87 作者:小新 栏目:开发技术

小编给大家分享一下Laravel中ORM数据model操作的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

随机查询

$data=Move::where('release',1)
->where('is_hot',1)
->where('is_status',1)
->orderBy(\DB::raw('RAND()'))
->take(4)
->get();

1.ORM操作需要创建对应的model

class User extends Eloquent

2.有两种方式使用数据操作对象

a. 使用new关键字创建对象后执行对象的方法

b. 直接调用static方法(实际并发静态方法,而是fascade生成的)

3.常用数据操作

a. User::find(1) 查找单条数据

b. User::all() 查找所有数据

c. User::find(1)->delete() 删除单条数据

d. User::destory(array(1,2,3)) 删除单条或多条数据

e. User::save() 保存数据

f. User::first() 取第一条数据

g. Album::where('artist', '=', 'Matt Nathanson') ->update(array('artist' => 'Dayle Rees')); 指定查询条件,更新数据

h. User::truncate() 清空数据表,危险操作

i. Album::where('artist', '=', 'Something Corporate')->get(array('id','title')); 配合查询条件获取多条数据

j. Album::pluck('artist'); 返回表中该字段的第一条记录

k. Album::lists('artist'); 返回一列数据

l. Album::where('artist', '=', 'Something Corporate')->toSql(); 获取查询的sql语句,仅用于条件,不能用户带get()之类的带查询结果的查询中

注:直接使用return 查询结果为json格式的数据

这里使用的User为model名称

条件查询:

1. 最普通的条件查询 User::where('字段名','查询字符','限制条件') 例:Album::where('title', 'LIKE', '...%')

2. 多条件查询,使用多个where Album::where('title', 'LIKE', '...%')->where('artist', '=', 'Say Anything')->get();

3. 或查询操作使用orWhere(),使用方法通where

4.直接用sql语句写查询条件 Album::whereRaw('artist = ? and title LIKE ?', array('Say Anything', '...%'))

5. 其他查询方法

whereIn(),whereBetween(),whereNested()子查询,orWhereNested(),whereNotIn(),whereNull(),whereNotNull()

6. 快捷方式 whereUsername('king') 查询'username' = 'king'的数据,默认系统无此方法,username为字段名称

结果排序:

使用order关键字:

Album::where('artist', '=', 'Matt Nathanson')->orderBy('year')->get(); 默认asc
orderBy('year', 'desc')

限制结果数量

take()方法
Album::take(2)->get();       //select * from `albums` limit 2

指定偏移

Album::take(2)->skip(2)->get();  //select * from `albums` limit 2 offset 2
whereRaw($where)->skip($limit)->take($pageSize)->get();

看完了这篇文章,相信你对“Laravel中ORM数据model操作的示例分析”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI