Thinkphp 5.1+ 中的路由分組
阿新 • • 發佈:2018-11-05
開篇廢話: 除四書外,杜撰的太多,偏只我是杜撰不成? thinkphp 3.2 之後 '杜撰' Laravel 太嚴重,既然這樣,我 們為什麼不直接用 Laravel 呢?!!
我用 Lumen 寫 api 習慣了,總是想把路由寫成分組格式或是把字首,中介軟體等摘出來,TP5.1+ 中可以實現,但是跟 Laravel/Lumen 有些許區別,如下:
// 路由分組 // prefix 名稱空間 Route::group('dev/api',function (){ // 路由字首 Route::group(['ext' => 'html'],function (){ Route::get('test4','test4'); })->middleware('check'); })->prefix('@dev/dev/');
group() 的第一個引數如果是字串就是路由字首,如果是陣列格式的就是代表路由引數.
prefix(@dev/dev/) 可以理解成 Laravel 中的 namespace 名稱空間引數
由路由可知以下這個請求
dev/api/test4.html
會走 check 中介軟體,url 字尾為 .html,會訪問 dev 模組中 dev 控制器中的 test4 方法
check 中介軟體程式碼
這是一個後置中介軟體,在訪問結束後我們加上了一個 xxx 的 header 頭資訊.
test4 方法
public function test4(Request $request){ echo "@dev/dev/test4"; }
訪問結果