学院君 has written 716 articles

资深PHP工程师,Laravel学院院长

[ 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 …

[ Laravel 5.1 文档 ] 基础 —— 视图

1、基本使用 视图包含服务于应用的HTML并将应用的控制器逻辑和表现逻辑进行分离。视图文件存放在resources/views目录。 下面是一个简单视图: <!– 该视图存放 resources/views/greeting.php –> <html> <body> <h1>Hello, <?php echo $name; ?&g…

[ Laravel 5.1 文档 ] 基础 —— HTTP 响应

1、基本响应 所有路由和控制器都会返回某种被发送到用户浏览器的响应,Laravel提供了多种不同的方式来返回响应,最基本的响应就是从路由或控制器返回一个简单的字符串: Route::get(‘/’, function () { return ‘Hello World’; }); 给定的字符串会被框架自动转化为HTTP响应。 但是大多数路由和控制器动作都会返回一个完整的Illuminate…

[ Laravel 5.1 文档 ] 基础 —— HTTP 请求

1、访问请求 通过依赖注入获取当前HTTP请求实例,应该在控制器的构造函数或方法中对Illuminate\Http\Request类进行类型提示,当前请求实例会被服务容器自动注入: <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Routing\Controller;…

[ Laravel 5.1 文档 ] 基础 —— HTTP 控制器

1、简介 将所有的请求处理逻辑都放在单个routes.php中肯定是不合理的,你也许还希望使用控制器类组织管理这些行为。控制器可以将相关的HTTP请求封装到一个类中进行处理。通常控制器存放在app/Http/Controllers目录中。 2、基本控制器 下面是一个基本控制器类的例子。所有的Laravel控制器应该继承自Laravel自带的控制器基类Controller: <?ph…

[ Laravel 5.1 文档 ] 基础 —— HTTP 中间件

1、简介 HTTP中间件提供了一个便利的机制来过滤进入应用的HTTP请求。例如,Laravel包含了一个中间件来验证用户是否经过授权,如果用户没有经过授权,中间件会将用户重定向到登录页面,否则如果用户经过授权,中间件就会允许请求继续往前进入下一步操作。 当然,除了认证之外,中间件还可以被用来处理更多其它任务。比如:CORS中间件可以用于为离开站点的响应添加合适的头(跨域);日志中间件可以…