[笔记]laravel动态匹配路由的实现
当路由是根据后台配置或数据库动态生成时,可以直接在路由文件使用循环来创建。
例如:我建了一个多网站的系统,每个网站都有首页、列表页、详情页,但是如何根据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 协议》,转载必须注明作者和本文链接
推荐文章: