[ Laravel 5.1 文档 ] 数据库 —— 迁移

1、简介 迁移就像数据库的版本控制,允许团队简单轻松的编辑并共享应用的数据库表结构,迁移通常和Laravel的结构构建器结对从而可以很容易地构建应用的数据库表结构。 Laravel的Schema门面提供了与数据库系统无关的创建和操纵表的支持,在Laravel所支持的所有数据库系统中提供一致的、优雅的、平滑的API。 2、生成迁移 使用Artisan命令make:migration来创建一…

[ Laravel 5.1 文档 ] 数据库 —— 查询构建器

1、简介 数据库查询构建器提供了一个方便的、平滑的接口来创建和运行数据库查询。查询构建器可以用于执行应用中大部分数据库操作,并且能够在支持的所有数据库系统上工作。 注意:Laravel查询构建器使用PDO参数绑定来避免SQL注入攻击,不再需要过滤传递到绑定的字符串。 2、获取结果集 2.1 从一张表中取出所有行 在查询之前,使用DB门面的table方法,table方法为给定表返回一个查询…

[ Laravel 5.1 文档 ] 数据库 —— 起步

1、简介 Laravel让连接多种数据库和运行查询都变得非常简单,不论使用原生SQL、还是查询构建器,还是Eloquent ORM。目前,Laravel支持四种类型的数据库系统: MySQL Postgres SQLite SQL Server 1.1 配置 Laravel让连接数据库和运行查询都变得非常简单。应用的数据库配置位于config/database.php。在该文件中你可以定…

[ Laravel 5.1 文档 ] 架构 —— 门面(Facades)

1、简介 门面为应用的服务容器中的有效类提供了一个“静态”接口。Laravel附带了很多门面,你可能在不知道的情况下正在使用它们。Laravel的门面作为服务容器中的底层类的“静态代理”,相比于传统静态方法,在维护时能够提供更加易于测试、更加灵活的、简明且富有表现力的语法。 2、使用门面 在Laravel应用的上下文中,门面就是一个提供访问容器中对象的类。该机制原理由Facade类实现,…

[ Laravel 5.1 文档 ] 架构 —— 契约(Contracts)

1、简介 Laravel的契约是指框架提供的一系列定义核心服务的接口。比如,Illuminate\Contracts\Queue\Queue契约定义了队列任务需要的方法,Illuminate\Contracts\Mail\Mailer契约定义了发送邮件所需要的方法。 每一个契约都有框架提供的相应实现。比如,Laravel提供了多个驱动的队列实现,邮件实现则由 SwiftMailer驱动。…

[ Laravel 5.1 文档 ] 架构 —— 服务容器

1、简介 Laravel服务容器是一个用于管理类依赖和执行依赖注入的强大工具。依赖注入听上去很花哨,其实质是通过构造函数或者某些情况下通过set方法将类依赖注入到类中。 让我们看一个简单的例子: <?php namespace App\Jobs; use App\User; use Illuminate\Contracts\Mail\Mailer; use Illuminate\C…

[ Laravel 5.1 文档 ] 架构 —— 服务提供者

1、简介 服务提供者是所有Laravel应用启动的中心,你自己的应用以及所有Laravel的核心服务都是通过服务提供者启动。 但是,我们所谓的”启动“指的是什么?通常,这意味着注册事物,包括注册服务容器绑定、时间监听器、中间件甚至路由。服务提供者是应用配置的中心。 如果你打开Laravel自带的config/app.php文件,将会看到一个providers数组,这里就是应用所要加载的所…

[ Laravel 5.1 文档 ] 架构 —— 应用目录结构

1、简介 Laravel应用默认的目录结构试图为不管是大型应用还是小型应用提供一个好的起点,当然,你可以自己按照喜好重新组织应用目录结构,Laravel对类在何处被加载没有任何限制——只要Composer可以自动载入它们即可。 2、根目录 新安装的Laravel应用包含许多文件夹: app目录包含了应用的核心代码; bootstrap目录包含了少许文件用于框架的启动和自动载入配置,还有一…

[ Laravel 5.1 文档 ] 架构 —— 一次请求的生命周期

1、简介 当我们使用现实世界中的任何工具时,如果理解了该工具的工作原理,那么用起来就会得心应手,应用开发也是如此。当你理解了开发工具如何工作,用起来就会更加游刃有余。 本文档的目标就是从一个更好、更高层面向你阐述Laravel框架的工作原理。通过对框架更全面的了解,一切都不再那么神秘,你将会更加自信的构建应用。 如果你不能马上理解所有这些条款,不要失去信心!先试着掌握一些基本的东西,你的…

[ Laravel 5.1 文档 ] 基础 —— Blade 模板引擎

1、简介 Blade是Laravel提供的一个非常简单、强大的模板引擎,不同于其他流行的PHP模板引擎,Blade在视图中并不约束你使用PHP原生代码。所有的Blade视图都会被编译成原生PHP代码并缓存起来直到被修改,这意味着对应用的性能而言Blade基本上是零开销。Blade视图文件使用.blade.php文件扩展并存放在resources/views目录下。 2、模板继承 2.1 …