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

本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

(0)

相关推荐

  • laravel5.6框架操作数据curd写法(查询构建器)实例分析

    本文实例讲述了laravel5.6框架操作数据curd写法(查询构建器).分享给大家供大家参考,具体如下: laravel5.6 数据库操作-查询构建器 <?php //laravel5.6 语法 demo示例 namespace App\Http\Controllers;//命名该控制App空间下名称 use Illuminate\Support\Facades\DB;//使用DB操作数据库 use App\Http\Controllers\Controller;//继承基础控制器 class

  • Laravel框架数据库CURD操作、连贯操作总结

    一.Selects 检索表中的所有行 复制代码 代码如下: $users = DB::table('users')->get(); foreach ($users as $user) { var_dump($user->name); } 从表检索单个行 复制代码 代码如下: $user = DB::table('users')->where('name', 'John')->first(); var_dump($user->name); 检索单个列的行 复制代码 代码如下:

  • laravel框架数据库操作、查询构建器、Eloquent ORM操作实例分析

    本文实例讲述了laravel框架数据库操作.查询构建器.Eloquent ORM操作.分享给大家供大家参考,具体如下: 1.连接数据库 laravel连接数据库的配置文件位于config/database.php中,在其中connection字段中包含laravel所支持的数据库的配置信息,可以看到其中有主机.端口.数据库.用户名.密码等信息: 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', 'localhost'),

  • Laravel5.1 框架数据库查询构建器用法实例详解

    本文实例讲述了Laravel5.1 框架数据库查询构建器用法.分享给大家供大家参考,具体如下: 今儿个咱说说查询构建器.它比运行原生SQL要简单些,它的操作面儿也是比较广泛的. 1 查询结果 先来看看它的语法: public function getSelect() { $result = DB::table('articles')->get(); dd($result); } 查询构建器就是通过table方法返回的,使用get()可以返回一个结果集(array类型) 这里是返回所有的数据,当然

  • laravel框架数据库配置及操作数据库示例

    本文实例讲述了laravel框架数据库配置及操作数据库.分享给大家供大家参考,具体如下: laravel 数据库配置 数据库配置文件为项目根目录下的config/database.php //默认数据库为mysql 'default' => env('DB_CONNECTION', 'mysql'), 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('

  • Laravel框架查询构造器 CURD操作示例

    本文实例讲述了Laravel框架查询构造器 CURD操作.分享给大家供大家参考,具体如下: 新增 //插入一条数据 public function insert(){ $rs = DB::table('student')->insert([ 'name' => 'Kit', 'age' => 12 ]); dd($rs); //true } //插入一条数据并返回自增ID public function insert(){ $id = DB::table('student')->i

  • Laravel框架实现model层的增删改查(CURD)操作示例

    本文实例讲述了Laravel框架实现model层的增删改查(CURD)操作.分享给大家供大家参考,具体如下: protected $table = 'user_city'; public $timestamps = false; //添加 返回id public function cityadd($data) { return $this->insertGetId($data); } //单条查找 public function getfind($id) { if($this->where('

  • laravel通用化的CURD的实现

    说明 非常高效的处理laravel中curd的操作 安装 composer require shencongcong/laravel-curd ~1.0 laravel项目的 config/app.php 注册 ServiceProvider 'providers' => [ // ... Shencongcong\LaravelCurd\LaravelCurdServiceProvider::class, ], 'aliases' => [ // ... 'LaravelCurd'=>

  • laravel 操作数据库常用函数的返回值方法

    1.insert/insertGetId insert函数的返回值为boolean类型:成功为true,失败为false insertGetId函数的返回值为整型:成功为插入时的ID值,失败为- DB::table('users')->insert( ['name' => '上官帝文1', 'age' => 99] ); DB::table('users')->insertGetId( ['name' => '上官帝文2', 'age' => 98] ); 2.upda

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

    本文实例讲述了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=&qu

  • Laravel5.1 框架Middleware中间件基本用法实例分析

    本文实例讲述了Laravel5.1 框架Middleware中间件基本用法.分享给大家供大家参考,具体如下: 中间件?什么鬼? 大家第一次接触这个词都会有这么个疑问,但它其实没那么神秘. 一句话就可以解释它:过滤HTTP请求专用机制. 为什么要使用中间件? 过滤HTTP请求是可以写在别的地方,比如说控制器中 路由中,BUT 抽象出来就有它的理由,比如说Laravel自带的Auth中间件 它要求必须是登录进来的用户才有权访问 如果没有登录就跳转到登录页面,这样的逻辑在很多场景都会用到 这很明显了吧

  • Laravel5.1 框架模型工厂ModelFactory用法实例分析

    本文实例讲述了Laravel5.1 框架模型工厂ModelFactory用法.分享给大家供大家参考,具体如下: 今天要说的是模型工厂,它是可以快速生成一些测试数据的东西,之前我们介绍过Seeder,当我们使用模型访问数据时 可以用模型工厂搭配Seeder使用. 1 编写一个ModelFactory ModelFactory的路径在 database/factories/ 下: // 这是系统自带的工厂 $factory->define(App\User::class, function ($fa

  • Laravel5.1 框架模型多态关联用法实例分析

    本文实例讲述了Laravel5.1 框架模型多态关联用法.分享给大家供大家参考,具体如下: 什么是多态关联? 一个例子你就明白了:好比如说评论 它可以属于视频类 也可以属于文章类,当有个需求是 从评论表中取到视频类的数据,这就需要用到多态关联了. 简单的一句话总结:一张表对应两张表. 1 实现多态关联 1.1 文章表的结构 public function up() { Schema::create('articles', function (Blueprint $table) { $table-

  • Flask框架WTForm表单用法示例

    本文实例讲述了Flask框架WTForm表单用法.分享给大家供大家参考,具体如下: 运行环境: python2.7 flask  0.11 flask-wtf  0.14.2 wtform能够通过一个类定义一些字段,这些字段会在前端生成标签,并且通过设置字段的验证规则,自动判断前端输入数据的格式. 一般用于用户登录,用户注册等信息录入. 示例: from wtforms import Form from flask import Flask,render_template,request,red

  • thinkPHP框架单元测试库tpunit用法示例

    本文实例讲述了thinkPHP框架单元测试库tpunit用法.分享给大家供大家参考,具体如下: thinkphp本身并没有提供相应的单元测试支持,所以这里介绍一个可以对tp进行单元测试的库tpunit. Tpunit这个库是依赖于phpunit的,其特点是易用.方便和非入侵式. 使用TPUNIT很简单,只需要定义一个路径常量和导入要被测试的文件即可. Home模块下有个控制器如下: namespace Home\Controller; use Think\Controller; class In

  • CI框架简单分页类用法示例

    本文实例讲述了CI框架简单分页类用法.分享给大家供大家参考,具体如下: /** * * 关于 页码有效性的判断需要加在 控制器中判断,即当页码数<1或者>总页数 * */ class Custom_pagination { var $page_url = ''; //分页目标URL var $page_size = 10; //每一页行数 var $page_num = 1;//页码 var $rows_num= '';//数据总行数 var $links_num= 3;//选中链接前后的链接

  • Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法详解

    本文实例讲述了Laravel框架Eloquent ORM新增数据.自定义时间戳及批量赋值用法.分享给大家供大家参考,具体如下: 好了,这篇文章我们主要掌握以下几个知识点 通过模型新增数据(涉及到自定义时间戳) 使用模型的Create方法新增数据(涉及到批量赋值) NO.1通过模型新增数据 我的数据库和上篇文章结尾的数据库样式是一致的,那么我要想在这里面输入一个名字叫做ChenChai,年龄是为17岁.要如何操作呢? 代码如下: namespace App\Http\Controllers; us

  • Laravel框架Eloquent ORM修改数据操作示例

    本文实例讲述了Laravel框架Eloquent ORM修改数据操作.分享给大家供大家参考,具体如下: 这篇文章主要讲述两个知识点 通过模型更新 结合查询语句批量更新 NO.1模型更新 在更新之前我先让你们看一下我的数据库 里面共有四条数据,好,那么我们先使用模型更新,更新我的第四条数据,代码如下: namespace App\Http\Controllers; use App\Student; use Illuminate\Support\Facades\DB; class StudentCo

随机推荐