首页 php框架 ThinkPHP 从一个简单的小例子入门ThinkPHP6的中间件

从一个简单的小例子入门ThinkPHP6的中间件

May 06, 2020 pm 03:47 PM
thinkphp6 中间件

从ThinkPHP6开始,一个叫做“中间件”的名词出现在了官方手册中,那么中间件是用来干什么的?又应该如何使用呢?下面咱们慢慢分析。

首先看下中间件官网的定义:

中间件主要用于拦截或过滤应用的 HTTP 请求,并进行必要的业务处理。

从字面意思上不难理解,中间件就是在我们请求控制器的方法之前,中间件就可以拦截或者做其他的事情。

我们在www.blog.com中的index控制中的index方法中就写一行代码:

echo "index方法";
登录后复制

我们来测试下定义了中间件会有什么事情发生?

一、中间件的定义

我们下载好ThinkPHP6框架后,在app下有middleware.php,这个文件就是中间件的定义文件,我们注意下它的位置,它没有放在任何应用下面,而是在app下面和BaseController.php是相同目录的,因此它是一个全局中间件。

定义中间件很简单,我们有两个方法:

1、用命令行。php think make:middleware Check。这个使用后的感受就一个字:快!真快!中间件定义瞬间完成。

2、复制粘贴,我们在app下建立middleware目录,并且建立一个 Check.php的中间件:

<?php
namespace app\middleware;
class Check
{
    public function handle($request, \Closure $next)
    {
        echo "app中间件";
        return $next($request);
    }
}
登录后复制

中间件定义完了,为啥没生效?

按照上面的中间件定义步骤,中间件定义完成,但是并没有生效,是什么原因呢?

原因是没有在配置文件中启动。如何操作?

打开app\middleware.php,在最小面添加如下代码:

app\middleware\Check::class
登录后复制

我们再次访问www.blog.com就会发现,先输出中间件的内容,再输入控制器的内容。

QQ截图20200506154819.jpg

这也就是应证了官方对中间件的定义,在执行方法前先去执行对应的中间件。以上就是一个中间件入门的小例子,这个小例子吃透后,也就为中间件其他的内容打开了大门。

以上是从一个简单的小例子入门ThinkPHP6的中间件的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何在CodeIgniter中实现自定义中间件 如何在CodeIgniter中实现自定义中间件 Jul 29, 2023 am 10:53 AM

如何在CodeIgniter中实现自定义中间件引言:在现代的Web开发中,中间件在应用程序中起着至关重要的作用。它们可以用来执行在请求到达控制器之前或之后执行一些共享的处理逻辑。CodeIgniter作为一个流行的PHP框架,也支持中间件的使用。本文将介绍如何在CodeIgniter中实现自定义中间件,并提供一个简单的代码示例。中间件概述:中间件是一种在请求

tomcat中间件原理是什么 tomcat中间件原理是什么 Dec 27, 2023 pm 04:40 PM

tomcat中间件原理是基于Java Servlet和Java EE规范来实现的。Tomcat作为一个Servlet容器,负责处理HTTP请求和响应,提供Web应用程序的运行环境。Tomcat中间件的原理主要涉及:1、容器模型;2、组件化架构;3、Servlet处理机制;4、事件监听和过滤器;5、配置管理;6、安全性;7、集群和负载均衡;8、连接器技术;9、嵌入式模式等等。

使用Slim框架中的中间件实现用户身份验证 使用Slim框架中的中间件实现用户身份验证 Jul 29, 2023 am 10:22 AM

使用Slim框架中的中间件实现用户身份验证随着Web应用程序的发展,用户身份验证成为了一个至关重要的功能。为了保护用户的个人信息和敏感数据,我们需要一种可靠的方法来验证用户的身份。在本文中,我们将介绍如何使用Slim框架的中间件来实现用户身份验证。Slim框架是一个轻量级的PHP框架,它提供了一种简单、快速的方式来构建Web应用程序。其中一个强大的特性是中间

如何在Laravel中使用中间件处理表单验证 如何在Laravel中使用中间件处理表单验证 Nov 02, 2023 pm 03:57 PM

如何在Laravel中使用中间件处理表单验证,需要具体代码示例引言:在Laravel中,表单验证是非常常见的任务。为了确保用户输入的数据的有效性和安全性,我们通常会对表单提交的数据进行验证。Laravel提供了一个方便的表单验证功能,同时也支持使用中间件来处理表单验证。本文将详细介绍如何在Laravel中使用中间件处理表单验证,并提供具体的代码示例

如何在Laravel中使用中间件进行数据加速 如何在Laravel中使用中间件进行数据加速 Nov 02, 2023 am 09:40 AM

如何在Laravel中使用中间件进行数据加速引言:在使用Laravel框架开发Web应用程序时,数据加速是提高应用性能的关键。中间件是Laravel提供的一个重要功能,可以在请求到达控制器之前或响应返回之前对请求进行处理。本文将重点介绍如何在Laravel中使用中间件实现数据加速,并提供具体的代码示例。一、什么是中间件中间件是Laravel框架中一种机制,用

如何在Laravel中使用中间件进行响应转换 如何在Laravel中使用中间件进行响应转换 Nov 03, 2023 am 09:57 AM

如何在Laravel中使用中间件进行响应转换中间件是Laravel框架中非常强大且实用的功能之一。它允许我们在请求进入控制器之前或响应被发送给客户端之前,对请求和响应进行处理。在本文中,我将演示如何使用中间件在Laravel中进行响应转换。在开始之前,确保你已经安装了Laravel并创建了一个新的项目。现在,我们将按照以下步骤进行操作:创建一个新的中间件打开

在Slim框架中使用中间件(Middleware)设置跨域资源共享(CORS)的方法 在Slim框架中使用中间件(Middleware)设置跨域资源共享(CORS)的方法 Jul 30, 2023 pm 08:34 PM

在Slim框架中使用中间件(Middleware)设置跨域资源共享(CORS)的方法跨域资源共享(CORS)是一种机制,允许服务器在HTTP响应头中设置一些额外的信息,来告知浏览器是否允许跨域请求。在一些前后端分离的项目中,使用CORS机制可以实现前端跨域请求后端接口的需求。在使用Slim框架开发RESTAPI时,我们可以使用中间件(Middleware)

如何在Laravel中使用中间件进行数据恢复 如何在Laravel中使用中间件进行数据恢复 Nov 02, 2023 pm 02:12 PM

Laravel是一个流行的PHPWeb应用程序框架,提供了许多快速而又简单的方式来构建高效、安全和可扩展的Web应用程序。在开发Laravel应用程序时,我们经常需要考虑数据恢复的问题,即如何在数据丢失或损坏的情况下恢复数据并保证应用程序的正常运行。在本文中,我们将介绍如何使用Laravel中间件来实现数据恢复功能,并提供具体的代码示例。一、什么是Lara

See all articles