Dee*_*jay 7 php laravel laravel-5
我是laravel的新手,想要获取该控制器中所有控制器列表和操作列表.只是想知道是否有办法通过代码获取所有控制器列表以及所有方法?
谢谢,DJ
Bog*_*dan 16
通过如何解释您需要了解控制器操作,似乎操作已映射到路由,这意味着您可以使用路由获取映射控制器和操作的列表.以下代码将生成已注册的路由控制器操作的数组:
$controllers = [];
foreach (Route::getRoutes()->getRoutes() as $route)
{
$action = $route->getAction();
if (array_key_exists('controller', $action))
{
// You can also use explode('@', $action['controller']); here
// to separate the class name from the method
$controllers[] = $action['controller'];
}
}
Run Code Online (Sandbox Code Playgroud)
这将忽略具有Closures映射的路由,您不需要这些路由.请注意,您可能需要过滤掉第三方软件包注册的路由中的任何匹配项.