[筆記]laravel動態匹配路由的實現

李先生發表於2021-03-05

當路由是根據後臺配置或資料庫動態生成時,可以直接在路由檔案使用迴圈來建立。
例如:我建了一個多網站的系統,每個網站都有首頁、列表頁、詳情頁,但是如何根據url來區分不同的網站。

在web.php中增加路由

$list=['web1'=>'網站1','web2'=>'網站2'];//網站列表,每個網站都有一個標識。
foreach ($list as $key=>$val){ 
     Route::namespace('Web')->prefix($key)->group(function () use ($key){
        Route::get('/',ucwords($key).'Controller@index');
        Route::get('/index',ucwords($key).'Controller@index');
        Route::get('/list',ucwords($key).'Controller@list');
        Route::get('/info',ucwords($key).'Controller@info');
     });
}

這樣當訪問 /web1 就會執行 App\Http\Web\Web1Controller中的index方法。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
流年的舊吉他,彈不出時光的悲傷;慧極必傷,情深不壽

相關文章