19 篇文章 Lumen 5.1

Lumen 中文文档

[ Lumen 5.1 文档 ] 更多特性 —— 验证

1、简介 Lumen提供了多种方法来验证应用输入数据。默认情况下,Lumen的控制器基类使用ValidatesRequests trait,该trait提供了便利的方法通过各种功能强大的验证规则来验证输入的HTTP请求。 2、快速入门 要学习Lumen强大的验证特性,让我们先看一个完整的验证表单并返回错误信息给用户的例子。 2.1 定义路由 首先,我们假定在app/Http/routes…

[ Lumen 5.1 文档 ] 更多特性 —— 测试

1、简介 Lumen植根于测试,实际上,内置使用PHPUnit对测试提供支持是即开即用的,并且phpunit.xml文件已经为应用设置好了。框架还提供了方便的帮助方法允许你对应用进行富有表现力的测试。 tests目录中提供了一个ExampleTest.php文件,安装完新的Lumen应用后,只需简单在命令行运行phpunit来运行测试。 1.1 测试环境 Lumen在测试时自动配置ses…

[ Lumen 5.1 文档 ] 更多特性 —— Session

1、简介 由于HTTP驱动的应用是无状态的,所以我们使用session来存储用户请求信息。Lumen通过干净、统一的API处理后端各种有效session驱动,目前支持的流行后端驱动包括Memcached、Redis和数据库。 1.1 开启Session 要开启session,你需要取消bootstrap/app.php文件中$app->middleware()方法调用前的注释。 1…

[ Lumen 5.1 文档 ] 更多特性 —— 服务提供者

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

[ Lumen 5.1 文档 ] 更多特性 —— 服务容器

1、绑定 几乎所有的服务容器绑定都是在服务提供者中完成。因此本章节的演示例子用到的容器都是在这种上下文环境中,如果一个类没有基于任何接口那么就没有必要将其绑定到容器。容器并不需要被告知如何构建对象,因为它会使用PHP的反射服务自动解析出具体的对象。 在一个服务提供者中,可以通过$this->app变量访问容器,然后使用bind方法注册一个绑定,该方法需要两个参数,第一个参数是我们想…

[ Lumen 5.1 文档 ] 更多特性 —— 队列

1、简介 Lumen队列服务为各种不同的后台队列提供了统一的API。队列允许你推迟耗时任务(例如发送邮件)的执行,从而大幅提高web请求速度。 1.1 配置 .env文件的QUEUE_DRIVER选项决定应用使用的队列“驱动”。 1.2 队列驱动预备知识 数据库 为了使用database队列驱动,需要一张数据库表来存放任务,要生成创建该表的迁移,运行Artisan命令queue:tabl…

[ Lumen 5.1 文档 ] 更多特性 —— 事件

1、简介 Lumen事件提供了简单的观察者模式实现,允许你订阅和监听应用中的事件。事件类通常存放在app/Events目录,监听器存放在app/Listeners。 2、注册事件/监听器 Lumen自带的EventServiceProvider为事件注册提供了方便之所。其中的listen属性包含了事件(键)和对应监听器(值)数组。如果应用需要,你可以添加多个事件到该数组。例如,让我们添加…

[ Lumen 5.1 文档 ] 更多特性 —— 错误&日志

1、简介 开始一个新的Lumen项目的时候,错误和异常处理已经默认为你配置好了。此外,Lumen还集成了提供各种功能强大日志处理器的Monolog日志库。 2、配置 2.1 错误详情 配置文件.env中的APP_DEBUG配置选项控制浏览器显示的错误详情数量。 对本地开发而言,你应该设置环境变量APP_DEBUG值为true。在生产环境,该值应该被设置为false。 3、异常处理器 所有…

[ Lumen 5.1 文档 ] 更多特性 —— 加密

1、配置 在使用Lumen的加密器之前,应该在bootstrap/app.php文件中设置APP_KEY选项为32位随机字符串。如果这个值没有被设置,所有Lumen加密过的值都是不安全的。 2、基本使用 2.1 加密 你可以使用Crypt门面对数据进行加密,所有加密值都使用OpenSSL和AES-256-CBC密码进行加密。此外,所有加密值都通过一个消息认证码(MAC)来检测对加密字符串…

[ Lumen 5.1 文档 ] 更多特性 —— 数据库

1、配置 在Lumen中连接数据库和运行查询都非常简单,目前Lumen支持四种数据库系统:MySQL、Postgres、SQLite和SQL Server。 你可以在配置文件.env中使用配置选项DB_*来配置数据库设置,例如驱动、主机、用户名和密码。 注意:为了让配置值被加载,你需要取消bootstrap/app.php文件中Dotenv::load()调用前的注释。 2、基本使用 注…

12