laravel5.6 框架操作数据 Eloquent ORM用法示例


Posted in PHP onJanuary 26, 2020

本文实例讲述了laravel5.6 框架操作数据 Eloquent ORM用法。分享给大家供大家参考,具体如下:

建立Users模型

<?php
namespace App\Model\Eloquent\Admin;
use Illuminate\Database\Eloquent\Model;
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模型

use App\Model\Eloquent\Admin\Users;

ORM 查

//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 增

//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 改

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

ORM 删

//获取主键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();

laravel5.6 操作数据查询构建器

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP3 safe_mode 失效漏洞
Oct 09 PHP
可定制的PHP缩略图生成程式(需要GD库支持)
Mar 06 PHP
php mssql 数据库分页SQL语句
Dec 16 PHP
php zlib压缩和解压缩swf文件的代码
Dec 30 PHP
解析wamp5下虚拟机配置文档
Jun 27 PHP
PHP的魔术常量__METHOD__简介
Jul 08 PHP
javascript数组与php数组的地址传递及值传递用法实例
Jan 22 PHP
WordPress中用于检索模版的相关PHP函数使用解析
Dec 15 PHP
PHP之图片上传类实例代码(加了缩略图)
Jun 30 PHP
php上传excel表格并获取数据
Apr 27 PHP
PHP实现的最大正向匹配算法示例
Dec 19 PHP
php使用redis的有序集合zset实现延迟队列应用示例
Feb 20 PHP
Laravel框架自定义分页样式操作示例
Jan 26 #PHP
php数组函数array_push()、array_pop()及array_shift()简单用法示例
Jan 26 #PHP
php的instanceof和判断闭包Closure操作示例
Jan 26 #PHP
yii2.0框架场景的简单使用示例
Jan 25 #PHP
laravel框架实现为 Blade 模板引擎添加新文件扩展名操作示例
Jan 25 #PHP
laravel框架模型和数据库基础操作实例详解
Jan 25 #PHP
laravel框架分组控制器和分组路由实现方法示例
Jan 25 #PHP
You might like
php生成短网址示例
2014/05/05 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
PHP保存session到memcache服务器的方法
2016/01/19 PHP
php中实现字符串翻转的方法
2017/02/22 PHP
调试Javascript代码(浏览器F12及VS中debugger关键字)
2013/01/25 Javascript
7个JS基础知识总结
2014/03/05 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
2015/10/08 Javascript
JavaScript事件处理的方式(三种)
2016/04/26 Javascript
requirejs + vue 项目搭建详解
2017/06/16 Javascript
Vue修改mint-ui默认样式的方法
2018/02/03 Javascript
Vue resource三种请求格式和万能测试地址
2018/09/26 Javascript
支付宝小程序tabbar底部导航
2018/11/06 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
Node.js 获取微信JS-SDK CONFIG的方法示例
2019/05/21 Javascript
[58:54]EG vs RNG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python 学习笔记
2008/12/27 Python
python基础教程之自定义函数介绍
2014/08/29 Python
python制作小说爬虫实录
2017/08/14 Python
Python中如何导入类示例详解
2019/04/17 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
Python自动化测试笔试面试题精选
2020/03/12 Python
Python Tricks 使用 pywinrm 远程控制 Windows 主机的方法
2020/07/21 Python
瑞典领先的汽车零部件网上零售商:bildelaronline24.se
2017/01/12 全球购物
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
大学毕业的自我鉴定
2013/10/08 职场文书
运动会开幕式主持词
2014/03/28 职场文书
乐观自信演讲稿范文
2014/05/21 职场文书
银行求职信怎么写
2014/05/26 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
儿子满月酒致辞
2015/07/29 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
选对餐饮营销策略,营业额才会上涨
2019/08/27 职场文书
Go语言中的UTF-8实现
2021/04/26 Golang
SQL Server数据库查询出现阻塞之性能调优
2022/04/10 SQL Server