[ Laravel 5.3 文档 ] HTTP层 —— 路由

1、基本路由 最基本的 Laravel 路由只接收一个 URI 和一个闭包,并以此提供一个非常简单且优雅的定义路由方法: Route::get(‘foo’, function () { return ‘Hello World’; }); 默认路由文件 所有Laravel路由都定义位于routes目录下的路由文件中,这些文件通过框架自动加载。routes/web.php文件定义了web界面…

在 Mac 开发环境 Laravel Valet 中配置运行 Flarum 论坛系统

Laravel Valet 是为Mac OS X提供的极简开发环境,但是,Valet的配置和传统的HTTP服务器(Apache、Nginx等)有些区别,不同于在配置文件中重写URL,Valet通过在PHP类中使用一种模块化方式定义URL处理。由于Flarum和Laravel默认目录结构不同,所以我们需要在Valet定义其访问配置。 在~/.valet/Drivers目录下有个默认的配置文…

[ Laravel 5.3 文档 ] 序言 —— 发行版本说明

1、支持政策 对于 LTS 版本,比如 Laravel 5.1,我们将会提供为期两年的 bug 修复和三年的安全修复支持。LTS 版本将会提供最长时间的支持和维护。 对于其他通用版本,只提供六个月的 bug 修复和一年的安全修复支持,比如 Laravel 5.3。 2、Laravel 5.3 Laravel 5.3 在 5.2 的基础上继续进行优化,提供了大量新功能和新特性:基于驱动的通…

Laravel 5.3 新特性系列 —— 路由文件及路径修改

1、回顾Laravel 5.2中路由的修改 在 Laravel 5.2 的routes.php中我们可以看到路由被分割成两个路由群组:web和api,这样做的原因是基于中间件群组的理念:开箱即可拥有web和api两组路由。 web路由组提供了普通web用户所需的所有功能特性:如session、cookie、CSRF防护等等,相比之下,api路由组更加轻量级,只提供了throttle中间件…

Laravel 路由文件 routes.php 最佳分割方式

Laravel 的路由功能很强大,默认都是定义在 routes.php 文件中,随着项目越来越大,我们需要的定义的路由越来越多,想象一下,如果几百上千个路由都定义在一个文件中,如何去维护?也许还有不同的人都在同一个文件定义路由,这就造成了冲突,因此我们需要分割 routes.php 文件,下面介绍一种很优雅的方式。 在 app/Providers/RouteServiceProvider…

使用 Laravel API 文档生成器扩展包自动为项目生成 API 文档

1、简介&安装 Laravel API 文档生成器扩展包可以基于 Laravel 应用路由自动生成项目 API 文档。 我们使用Composer安装这个扩展包: $ composer require mpociot/laravel-apidoc-generator 安装完成后需要到config/app.php中注册服务提供者: Mpociot\ApiDoc\ApiDocGener…

现代 PHP 新特性系列(五) —— 闭包和匿名函数

1、概述 闭包和匿名函数在PHP 5.3.0中引入,这两个特性非常有用,每个PHP开发者都应该掌握。 闭包是指在创建时封装周围状态的函数,即使闭包所在的环境的不存在了,闭包中封装的状态依然存在。 匿名函数其实就是没有名称的函数,匿名函数可以赋值给变量,还能像其他任何PHP函数对象那样传递。不过匿名函数仍然是函数,因此可以调用,还可以传入参数,适合作为函数或方法的回调。 注:理论上讲闭包和…

Laravel & Lumen RESTFul API 扩展包:Dingo API(二) —— 创建 API Endpoint(路由)

Endpoint 就是路由的另一种术语,当我们讨论API时,很多人习惯将访问的路由看作Endpoint。 1、版本号 为了避免和主应用的路由混在一起,Dingo API使用了自己的路由器,正因如此我们首先需要获取API路由器实例来创建Endpoint: $api = app(‘Dingo\Api\Routing\Router’); 接下来需要定义版本号,从而可以为多版本API创建同样的E…

使用 Laravel Generator 快速为 Laravel 应用生成CRUD、API、测试用例代码 —— 安装篇

在开始使用Laravel Generator之前我们先来安装它,首先需要添加这些包到composer.json文件的require-dev: “infyomlabs/laravel-generator”: “dev-master”, “infyomlabs/core-templates”: “dev-master”, “laravelcollective/html”: “5.2.*” 注…

Laravel 5.2 新特性系列 —— 中间件组的定义及使用

不管你创建的Laravel应用体量有多大,路由文件routes.php的体积都会随之变得越来越大。对我而言创建一个新应用首先要做的就是根据业务逻辑对路由文件进行拆分和分组,比如“admin”、“auth”、“public”等。通常分组的每个部分都有其对应的中间件设置,例如,admin会用到一个auth中间件,API分组可能会有不同的auth中间件,并且会有指定的限制访问频率的中间件。 L…