【问题标题】:RouteCollection get routes not working in Laravel 5.6RouteCollection 获取在 Laravel 5.6 中不起作用的路线
【发布时间】:2018-11-22 16:20:50
【问题描述】:

我尝试使用此代码块获取路线

public function routeSave(RouteCollection $routes){
   $routeCollection = $routes->getRoutes();
   dd($routes);
 }

但它会在网络浏览器上返回这个

 RouteCollection {#556 ▼
 #routes: []
 #allRoutes: []
 #nameList: []
 #actionList: []
 }

那我怎样才能正确得到结果呢?

【问题讨论】:

  • 这个函数在哪里调用
  • 在路线Route::get('routes', 'HomeController@routeSave')->name('routes');

标签: laravel laravel-routing laravel-5.6


【解决方案1】:
use Illuminate\Support\Facades\Route;

public function routeSave(){
   $routeCollection = Route::getRoutes();
   dd($routeCollection);
}

更新以回复评论:

$routeNames = [];
foreach ($routeCollection as $route){
  $routeNames[] = $route->getName();
}

【讨论】:

  • 谢谢@Kerel,你能解释一下如何从输出中只提取nameList数组吗?
  • @Kerel 是否可以从 getAction 方法中仅获取索引操作?
猜你喜欢
  • 2018-08-01
  • 1970-01-01
  • 2014-11-21
  • 2018-09-28
  • 2018-12-09
  • 2018-10-25
  • 2017-10-02
  • 2013-05-03
相关资源
最近更新 更多