在Laravel v4中,我可以使用…

Route::currentRouteName()

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


当前回答

解决方案:

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

其他回答

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

request()->route()->uri
\Request::path()

我用这个来获取当前uri

在控制器中访问当前路由名

Ie - http://localhost/your_project_name/edit

$request->segment(1);  // edit

(或)

$request->url();  // http://localhost/your_project_name/edit

在Helper文件中,

您可以使用Route::current()->uri()来获取当前URL。

因此,如果你比较你的路由名在菜单上设置活动类,那么如果你使用

Route::currentRouteName()获取路由名并进行比较

找到了一种查找当前路由名称的方法,适用于laravel v5, v5.1.28和v5.2.10

名称空间

use Illuminate\Support\Facades\Route;

and

$currentPath= Route::getFacadeRoot()->current()->uri();

对于Laravel Laravel v5.3,你可以使用:

use Illuminate\Support\Facades\Route;

Route::currentRouteName();