扫描航线Laravel注释
问题描述:
我在“应用程序\ HTPP \控制器”目录中的小组命名空间下的控制器, 所以我的命名空间为:应用程序\ HTTP \控制器\面板扫描航线Laravel注释
我overrided的routeScans( )像下面的功能,但没有帮助!
public function routeScans() {
$classes = parent::routeScans();
$classes = array_merge(
$classes,
$this->getClassesFromNamespace('App\Http\Controllers\Panel')
);
return $classes;
}
我该如何扫描他们的路线?
答
我创建了一个功能列出这样的所有可用路由,您可以使用它,并修改根据自己的需要
function routelist() {
$allRoutes = Route::getRoutes()->getRoutes();
$availableRoutes = [];
foreach ($allRoutes as $route) {
$availableRoutes['availableAPI'][$route->getName()] = [
'method' => $route->getMethods()[0],
"uri" => $route->getUri(),
"name" => $route->getName(),
"controller" => $route->getAction()['uses'],
];
}
$table = "<table>";
foreach ($availableRoutes['availableAPI'] as $key => $entry) {
//dd($entry['controller']);
$table .= "<tr>";
$table .= "<td>" . @$entry['method'] . "</td>";
$table .= "<td>" . @$entry['uri'] . "</td>";
$table .= "<td>" . @$entry['name'] . "</td>";
if (is_string($entry['controller'])) {
$table .= "<td>" . @$entry['controller'] . "</td>";
} else {
$table .= "<td>closure function(){}</td>";
}
$table .= "</tr>";
}
$table .= "</table>";
return $table;
}
你是询问[Laravel命名空间路由(https://laravel.com /docs/5.3/routing#route-group-namespaces)? – Anish
@Anish不!我正在使用这个集合:https://laravelcollective.com/docs/5.1/annotations –