admin 发表于 2021-1-14 17:01:36

thinkphp 中间件自用使用学习记录

一、中间件文件定义

在APP\middleware目录 下建 立的类文件,均为中间件,全局中间件、路由中间件、控制器中间件,均可以通过目录路径引用这些中间件。多应用应该在自己的应用目录下再新建middleware目录,再在下面建立类文件。


二、中间件文件引用或叫使用

按一步骤建立中间件文件后

(一)作为全局间件使用
在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';

这样就是控制器中间件,会在整个控制器中起作用。

不得不吐槽,官方写的文档真他妈烂,论坛更是没一个回复是有帮助的,真后悔学这破玩意,可都学到这了,再放弃真的可惜。还是学完吧。

页: [1]
查看完整版本: thinkphp 中间件自用使用学习记录