在Laravel v4中,我可以使用…

Route::currentRouteName()

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


当前回答

在larvel 5.3中,我用它来获取路由名

要求::路径()

其他回答

最短的方法是Route facade \路线::当前()- > getName ()

这也适用于laravel 5.4.*

您要做的第一件事是在类的顶部导入命名空间。

use Illuminate\Support\Facades\Route;

拉拉维尔V8

$route = Route::current(); // Illuminate\Routing\Route
$name = Route::currentRouteName(); // RouteName
$action = Route::currentRouteAction(); // Action

Laravel v7、6和5.8

$route = Route::current();

$name = Route::currentRouteName();

$action = Route::currentRouteAction();

使用Laravel 5.1,您可以使用

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

我用这个来获取当前uri

解决方案:

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