Laravel ORM 数据model操作教程


Posted in PHP onOctober 21, 2019

随机查询

$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操作教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
基于PHP与XML的PDF文档生成技术
Oct 09 PHP
PHPLog php 程序调试追踪工具
Sep 09 PHP
关于页面优化和伪静态
Oct 11 PHP
php 用checkbox一次性删除多条记录的方法
Feb 23 PHP
解析数组非数字键名引号的必要性
Aug 09 PHP
php命名空间学习详解
Feb 27 PHP
PHP实现的MongoDB数据库操作类分享
May 12 PHP
PHP中使用asort进行中文排序失效的问题处理
Aug 18 PHP
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
Mar 03 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
Apr 30 PHP
php 多继承的几种常见实现方法示例
Nov 18 PHP
php多进程中的阻塞与非阻塞操作实例分析
Mar 04 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
Oct 21 #PHP
laravel 解决多库下的DB::transaction()事务失效问题
Oct 21 #PHP
PHP常用函数之获取汉字首字母功能示例
Oct 21 #PHP
PHP常用函数之根据生日计算年龄功能示例
Oct 21 #PHP
PHP常用函数之格式化时间操作示例
Oct 21 #PHP
PHP常用函数之base64图片上传功能详解
Oct 21 #PHP
laravel5 Eloquent 实现事务方式
Oct 21 #PHP
You might like
php 常用字符串函数总结
2008/03/15 PHP
php二分法在IP地址查询中的应用
2008/08/12 PHP
用PHP读取flv文件的播放时间长度
2009/09/03 PHP
来自phpguru得Php Cache类源码
2010/04/15 PHP
PHP获取表单所有复选框的值的方法
2014/08/28 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
2019/10/09 PHP
js wmp操作代码小结(音乐连播功能)
2008/11/08 Javascript
JS获取图片lowsrc属性的方法
2015/04/01 Javascript
javascript实现C语言经典程序题
2015/11/29 Javascript
简单讲解AngularJS的Routing路由的定义与使用
2016/03/05 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
2017/10/20 jQuery
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
JavaScript Canvas实现验证码
2020/08/02 Javascript
vue+element实现表格新增、编辑、删除功能
2019/05/28 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
Node.js爬虫如何获取天气和每日问候详解
2019/08/26 Javascript
浅谈JS for循环中使用break和continue的区别
2020/07/21 Javascript
[04:02]2014DOTA2国际邀请赛 BBC每日综述中国战队将再度登顶
2014/07/21 DOTA
[01:56]生活中的妖精之七夕特别档
2016/08/09 DOTA
[01:01:24]LGD vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
在Python中操作时间之tzset()方法的使用教程
2015/05/22 Python
Python Grid使用和布局详解
2018/06/30 Python
python发送告警邮件脚本
2018/09/17 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
Python Opencv实现图像轮廓识别功能
2020/03/23 Python
Python实现RGB与HSI颜色空间的互换方式
2019/11/27 Python
浅谈Python描述数据结构之KMP篇
2020/09/06 Python
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
垃圾回收的优点和原理。并考虑2种回收机制
2016/10/16 面试题
机关单位动员会主持词
2014/03/20 职场文书
马丁路德金演讲稿
2014/05/19 职场文书
师德师风的心得体会
2014/09/02 职场文书
2015年资料员工作总结
2015/04/25 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书