福昕娱乐
您的当前位置:首页说一说ThinkPHP6中五花八门的中间件

说一说ThinkPHP6中五花八门的中间件

来源:福昕娱乐


接下来我们看一个实例。

全局中间件:

 public function handle($request, Closure $next)
 {
 echo 'app全局中间件';
 return $next($request);
 }

应用中间件:

public function handle($request, Closure $next)
 {
 echo '应用中间件';
 return $next($request);
 }

路由中间件:

Route::rule('hello','index/hello')
->middleware(appmiddlewareAuth::class);

控制器中间件:

在使用控制器中间件之前,我们先定义好别名,在根目录下configmiddleware.php中定义别名。这个别名其实就是增加别名标识。别名定义好后,不仅在控制器中间件可以使用,路由中间件也可以使用。

return [
 'alias' => [
 'auth1' => appmiddlewareAuth1::class,
 ],
];

我们在这里定义别名中间件,就不需要在middleware.php中声明了,而是通过在控制中使用别名定义:

class Index
{
 protected $middleware = ['auth1'];
 public function index()
 {
 return 'index';
 }
 public function hello()
 {
 echo 'hello方法';
 }
}

这个时候我们访问hello方法,输出结果是:

app全局中间件

应用中间件

路由中间件

控制器中间件

hello方法

显示全文