在thinkphp中,在“APP\middleware”目录下建立的类文件为中间件,主要用于拦截或者过滤应用的HTTP请求,并进行必要的业务处理,可以分为全局中间件、路由中间件和控制器中间件。

本文操作环境:Windows10系统、ThinkPHP5版、Dell G3电脑。
thinkphp中间件的用法是什么
一、中间件文件定义
在APP\middleware目录 下建 立的类文件,均为中间件,全局中间件、路由中间件、控制器中间件,均可以通过目录路径引用这些中间件。多应用应该在自己的应用目录下再新建middleware目录,再在下面建立类文件。
中间件主要用于拦截或过滤应用的HTTP请求,并进行必要的业务处理。
立即学习“PHP免费学习笔记(深入)”;
定义中间件:可以通过命令行指令快速生成中间件
php think make:middleware Check
这个指令会 application/http/middleware目录下面生成一个Check中间件。
二、中间件文件引用或叫使用
按一步骤建立中间件文件后
(一)作为全局间件使用
1、什么是店中店?店中店是全诚商多用户版的一大特色,它既是独立的个体,又具有群集功能。我们做个例子说明:假设尊贵的您现实生活中租赁了一个店面,店面空间很大,您可以把您的店面分割成很多独立空间再向别人转租,这样您可以额外获得一部分租赁费用收入,借以减少你的个人租赁费用投入,还能起到活跃销售场所的气氛,俗话说:货卖一堆吗。你租赁的店面可以完全分割成很多空间向外转租,也可以自己保留一块空间为自己销售商品
在APP目录下的middleware.php文件 中,加入一中的路径及文件, 比如 \app\middleware\chushimima::class, 这样就是作为全局中间件使用。在全局都起作用。
不在middleware.php中注册的中间件就不是全局中间件,根据定义方法不同分为路由中间件,控制器中间件。
(二)作为路由中间件使用
还是同一个中间件类文件\app\middleware\chushimima,在APP目录下的route目录下的路由定义文件 中,加入路由规则,比如
Route::rule('index/denglu','index/denglu');
->middleware('\app\middleware\chushimima');这样就是路由中间件,只在访问这个路由的时候起作用。
(三)作为控制器中间件使用
还是同一个中间件类文件\app\middleware\chushimima,在你的控制器文件中添加以下代码,比如
class Index extends baseController
{ protected $middleware='\app\middleware\chushimima';推荐学习:《PHP视频教程》










