Laravel 列出视图中的路由

Posted

技术标签:

【中文标题】Laravel 列出视图中的路由【英文标题】:Laravel list routes in the view 【发布时间】:2017-09-18 03:51:48 【问题描述】:

如何在我的视图中列出具体的 api 路由?

例如这些:

...api/user
...api/Information

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

php artisan route:list

【问题讨论】:

【参考方案1】:

在您的控制器中,您可以使用Artisan 外观获取路由列表。我假设您所有的 api 路由在其路径中都有 api 字符串。:

public function showRoutes($request) 
    $routes = Artisan::call('route:list', ['--path' => 'api']);
    return view('your_view', compact('routes'));  

编辑:

你也可以使用Route门面getRoutes方法。

$routes = [];
foreach (\Route::getRoutes()->getIterator() as $route)
    if (strpos($route->uri, 'api') !== false)
        $routes[] = $route->uri;
    

return view('your_view', compact('routes'));

【讨论】:

您好抱歉迟到了回复我收到此错误The "path" argument does not exist. 检查答案。 path 是可选参数,所以你需要添加--path ok 错误消失了,但是如果我 dd($routes) 我得到一个 0,它不应该包含我的 api 路由错误 您可以循环浏览路线。 类似这样的东西返回所有路由$routes = app()->routes->getRoutes();,但我不知道如何过滤

以上是关于Laravel 列出视图中的路由的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.3:布局视图中的路由

如何从 laravel 中的某个路由页面检索图像或文件?

POST 路由未从根路径 Laravel 5.2 中列出

Laravel 中的返回视图未显示正确的 URL

laravel中的路由

laravel 包中路由声明的顺序