ORM 和 Eloquent

ORM

ORM(Object Relational mapping) 称为『对象关系映射』,是针对面向对象的编程语言(比如 PHP)和关系型数据库(比如 MySQL)的一种技术,它的目的是为了实现这两种不同类型的数据系统的 数据交互

简答点说就是:

  1. 用一个 PHP Class 代表数据库里的一张表,这个 Class 被称为『模型』(Model)。在 Laravel 中,所有继承 Illuminate\Database\Eloquent\Model 的类就是一个模型。
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Author extends Model
{

}
  1. 类的一个实例表示数据库里的一条记录。
// $author 表示数据库表 `authors` 中主键是 `1` 的那条记录
$author = Author::find(1);
  1. 对 Model 操作都会映射成对应的 SQL 语句,你几乎不用写原生 SQL 了
$author->name = 'baooab';
$author->save();

// 产生的 SQL 如下:
update `authors` set `name` = 'baooab', `updated_at` = '2017-08-20 15:10:43' where `id` = 1;

Eloquent

Laravel 的 ORM 实现称为『Eloquent』,又称『Eloquent ORM』。Laravel 中的模型是 ORM 实现的载体,称 『Eloquent Model』,简称『Model』。

本作品采用《CC 协议》,转载必须注明作者和本文链接
本帖由 Summer 于 7年前 加精
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!