Laravel在视图中列出路线

Mic*_*asl 4 php routes view laravel laravel-5.4

如何在我的视图中列出路由,特别是api路由?

例如这些:

...api/user
...api/Information
Run Code Online (Sandbox Code Playgroud)

例如,artisan命令确实这样列出它们:

php artisan route:list
Run Code Online (Sandbox Code Playgroud)

Pan*_*ami 6

在控制器中,您可以使用ArtisanFacade 获取路线列表。我假设您的所有api路线的路径中都包含api字符串。

public function showRoutes($request) {
    $routes = Artisan::call('route:list', ['--path' => 'api']);
    return view('your_view', compact('routes'));  
}
Run Code Online (Sandbox Code Playgroud)

编辑:

您也可以使用Route立面getRoutes方法。

$routes = [];
foreach (\Route::getRoutes()->getIterator() as $route){
    if (strpos($route->uri, 'api') !== false){
        $routes[] = $route->uri;
    }
}
return view('your_view', compact('routes'));
Run Code Online (Sandbox Code Playgroud)