Laravel核心解读--完结篇

2019-02-22
阅读 2 分钟
4.7k
过去一年时间写了20多篇文章来探讨了我认为的Larave框架最核心部分的设计思路、代码实现。通过更新文章自己在软件设计、文字表达方面都有所提高,在刚开始决定写Laravel源码分析地文章的时候我地期望是自己和读者通过学习Laravel核心的代码能在软件设计上带来提高,这些提高主要是指两方面:

Laravel核心解读--Console内核

2018-12-01
阅读 6 分钟
6.2k
上一篇文章我们介绍了Laravel的HTTP内核,详细概述了网络请求从进入应用到应用处理完请求返回HTTP响应整个生命周期中HTTP内核是如何调动Laravel各个核心组件来完成任务的。除了处理HTTP请求一个健壮的应用经常还会需要执行计划任务、异步队列这些。Laravel为了能让应用满足这些场景设计了artisan工具,通过artisan工具定...

Laravel核心解读--HTTP内核

2018-11-10
阅读 9 分钟
6.2k
Http Kernel是Laravel中用来串联框架的各个核心组件来网络请求的,简单的说只要是通过public/index.php来启动框架的都会用到Http Kernel,而另外的类似通过artisan命令、计划任务、队列启动框架进行处理的都会用到Console Kernel, 今天我们先梳理一下Http Kernel做的事情。

Laravel核心解读--Session源码解析

2018-08-11
阅读 19 分钟
3.1k
由于HTTP最初是一个匿名、无状态的请求/响应协议,服务器处理来自客户端的请求然后向客户端回送一条响应。现代Web应用程序为了给用户提供个性化的服务往往需要在请求中识别出用户或者在用户的多条请求之间共享数据。Session 提供了一种在多个请求之间存储、共享有关用户的信息的方法。Laravel 通过同一个可读性强的 API...

Laravel核心解读 -- Response

2018-05-27
阅读 9 分钟
4.8k
前面两节我们分别讲了Laravel的控制器和Request对象,在讲Request对象的那一节我们看了Request对象是如何被创建出来的以及它支持的方法都定义在哪里,讲控制器时我们详细地描述了如何找到Request对应的控制器方法然后执行处理程序的,本节我们就来说剩下的那一部分,控制器方法的执行结果是如何被转换成响应对象Response...

Laravel核心解读 -- Request

2018-05-19
阅读 8 分钟
5.6k
很多框架都会将来自客户端的请求抽象成类方便应用程序使用,在Laravel中也不例外。Illuminate\Http\Request类在Laravel框架中就是对客户端请求的抽象,它是构建在Symfony框架提供的Request组件基础之上的。今天这篇文章就简单来看看Laravel是怎么创建请求Request对象的,而关于Request对象为应用提供的能力我并不会过多...

Laravel核心解读--控制器

2018-05-12
阅读 8 分钟
3.6k
控制器能够将相关的请求处理逻辑组成一个单独的类, 通过前面的路由和中间件两个章节我们多次强调Laravel应用的请求在进入应用后首现会通过Http Kernel里定义的基本中间件

Laravel核心解读--Database(四) 模型关联

2018-05-02
阅读 18 分钟
5.9k
上篇文章我们主要讲了Eloquent Model关于基础的CRUD方法的实现,Eloquent Model中除了基础的CRUD外还有一个很重要的部分叫模型关联,它通过面向对象的方式优雅地把数据表之间的关联关系抽象到了Eloquent Model中让应用依然能用Fluent Api的方式访问和设置主体数据的关联数据。使用模型关联给应用开发带来的收益我认为有...

Laravel核心解读--Database(三) 模型CRUD

2018-04-29
阅读 11 分钟
4k
上一篇文章我们讲了Database的查询构建器QueryBuilder, 学习了QueryBuilder为构建生成SQL语句而提供的Fluent Api的代码实现。这一篇文章我们来学习Laravel Database里另外一个重要的部分: Eloquent Model。

Laravel核心解读--Database(二) 查询构建器

2018-04-16
阅读 13 分钟
3.6k
上文我们说到执行DB::table('users')->get()是由Connection对象执行table方法返回了一个QueryBuilder对象,QueryBuilder提供了一个方便的接口来创建及运行数据库查询语句,开发者在开发时使用QueryBuilder不需要写一行SQL语句就能操作数据库了,使得书写的代码更加的面向对象,更加的优雅。

Laravel核心解读--Database(一)基础介绍

2018-04-07
阅读 9 分钟
5.6k
在我们学习和使用一个开发框架时,无论使用什么框架,如何连接数据库、对数据库进行增删改查都是学习的重点,在Laravel中我们可以通过两种方式与数据库进行交互:

Laravel核心解读--Facades

2018-03-25
阅读 6 分钟
5.8k
Facades是我们在Laravel应用开发中使用频率很高的一个组件,叫组件不太合适,其实它们是一组静态类接口或者说代理,让开发者能简单的访问绑定到服务容器里的各种服务。Laravel文档中对Facades的解释如下:

Laravel核心解读--路由(Route)

2018-02-22
阅读 13 分钟
10.9k
路由是外界访问Laravel应用程序的通路或者说路由定义了Laravel的应用程序向外界提供服务的具体方式:通过指定的URI、HTTP请求方法以及路由参数(可选)才能正确访问到路由定义的处理程序。无论URI对应的处理程序是一个简单的闭包还是说是控制器方法没有对应的路由外界都访问不到他们,今天我们就来看看Laravel是如何来设...

Laravel核心解读--中间件(Middleware)

2018-02-05
阅读 9 分钟
12.4k
中间件(Middleware)在Laravel中起着过滤进入应用的HTTP请求对象(Request)和完善离开应用的HTTP响应对象(Reponse)的作用, 而且可以通过应用多个中间件来层层过滤请求、逐步完善相应。这样就做到了程序的解耦,如果没有中间件那么我们必须在控制器中来完成这些步骤,这无疑会造成控制器的臃肿。

Laravel核心解读--服务提供器(ServiceProvider)

2018-01-20
阅读 11 分钟
10.8k
服务提供器是所有 Laravel 应用程序引导中心。你的应用程序自定义的服务、第三方资源包提供的服务以及 Laravel 的所有核心服务都是通过服务提供器进行注册(register)和引导(boot)的。