【发布时间】:2017-10-17 15:38:39
【问题描述】:
我使用 Laravel 5.4,现在我想创建到控制器的动态路由,这意味着我可以直接访问 UserController 和 Profile 函数 throw route,例如。
GET http://localhost/user/profile?userid=123
上面的示例 URL 将访问 UserController 和函数 profile,并在 ? 之后使用动态参数。如果我想访问不同的控制器,我只需将user 参数更改为Controller 名称。
我创建了一条这样的路线,它可以工作。
Route::get('v1/{controller_name}/{function_name}/{query?}', function ($controller_name, $function_name){
$app = app();
$controller = $app->make('\App\Http\Controllers\Api\\'.$controller_name.'Controller');
return $controller->callAction($function_name, $parameters = array());
});
但是我不知道怎么传参数。
还有其他更好的方法吗?
【问题讨论】:
标签: php laravel laravel-5 url-routing url-mapping