在Laravel v4中,我可以使用…

Route::currentRouteName()

我如何在Laravel v5和Laravel v6中做到这一点?


当前回答

有很多方法可以做到这一点。你可以输入:

\Illuminate\Support\Facades\Request::route()->getName()

获取路由名称。

其他回答

使用Laravel 5.1,您可以使用

\Request::route()->getName()

您可以使用以下方法:

Route::getCurrentRoute()->getPath();

在Laravel版本> 6.0中,您可以使用以下方法:

$route = Route::current();

$name = Route::currentRouteName();

$action = Route::currentRouteAction();

它不需要记忆任何东西,当你想请求某个变量时,通过dd(Request())可以评估哪个变量对你来说是突出的。 在下图中,它很清楚。

如果你想获取路径,显然,这段代码会显示

dd(request()->getpathInfo())

别忘了嵌入 使用说明\ Http \请求; 例如:

if(request()->getpathInfo()=="/logadmin"){
do somethings....
}

你可以使用下面的代码在刀片文件中获取路由名称

request()->route()->uri

解决方案:

$routeArray = app('request')->route()->getAction();
$controllerAction = class_basename($routeArray['controller']);
list($controller, $route) = explode('@', $controllerAction);
echo $route;