我最近使用Laravel移位将一个项目从Laravel 5.4更新为9.X。
我有一个语言控制器,它可以让我交换语言,还可以翻译我的URL。
这似乎已经不起作用了:
$route = app('router')->getRoutes()->match(app('request')->create($previous_request->getUri()));
事实上,我以前也做过类似的事情,但都不工作
$route_name = app('router')->getRoutes()->match($previous_request)->getName();
不工作,我的意思是,如果我这样调试:
Log::debug("URL: " . $previous_request->getUri());
$route = app('router')->getRoutes()->match(app('request')->create($previous_request->getUri()));
Log::debug('Route: ' . $route);
laravel.log将包含URL:和正确的URL,但Route:永远不会显示。
我是否错过了从5.4到9.X的一些突破性变化?我现在该如何从url获取路线?
My Current URL: http://127.0.0.1:8000/users/list
$currentRouteName = Route::currentRouteName();
dd($currentRouteName);
Output: users.list
$currentRouteAction = Route::currentRouteAction();
dd($currentRouteAction);
Output: AppHttpControllersUserController@userLists