Laravel 中 Model 和 Builder
介绍
说明:本文主要学习Laravel Database模块的Query Builder源码。
一般情况下,所有关于查询构造器的内容都可以在这个命名空间下找到:Illuminate\Database\Query\Builder
而所有关于 Eloquent 的内容都会放在这个命名空间下:Illuminate\Database\Eloquent\Model
Laravel通过Schema Builder来设计数据库,通过Query Builder来CURD数据库。
Query Builder并不复杂或神秘,只是在PDO扩展的基础上又开放封闭的包装了一层,提供了fluent api,使得书写的代码也很简洁流畅。
在看下Query Builder源码之前,先大概探索下illuminate/database package
的目录结构。