命令創建:php think make:middleware Check
如果文件不存在,則手動創建 app\middleware\Check.php
中間件Check.php代碼
<?php declare (strict_types = 1); namespace app\middleware; class Check { /** * 處理請求 * * @param \think\Request $request * @param \Closure $next * @return Response */ public function handle($request, \Closure $next) { echo 'middleware'; return $next($request); } }
一:中間件調用
1:某條路由調用
admin/route/route.php
<?php use think\facade\Route; Route::get('/test', 'admin/index/test')->middleware(\app\middleware\Check::class);
2:某應用調用
/app/admin/middleware.php
<?php // 這是系統自動生成的middleware定義文件 return [ app\middleware\Check::class, ];
3:全局調用
/config/middleware.php 加上以下代碼
'middleware' => [ app\middleware\Check::class, ],
二:中間件別名
config/middleware.php定義別名
<?php // 中間件配置 return [ // 別名或分組 'alias' => [ 'ccheck' => app\middleware\Check::class, ], // 優先級設置,此數組中的中間件會按照數組中的順序優先執行 'priority' => [], ];
應用調用別名
app\admin\middleware.php
<?php // 這是系統自動生成的middleware定義文件 return [ 'ccheck', ];
應用場景:
訪問日志,登錄檢測,ip黑名單,SQL注入,
************************************************
Thinkphp高級交QQ流群:101766150
作者:狂奔的蝸牛
轉載請注明出處
************************************************