В Laravel 4 мне удалось получить имя текущего маршрута, используя …
Route::currentRouteName()
Как я могу сделать это в Laravel 5?
Попробуй это
Route::getCurrentRoute()->getPath();
или же
\Request::route()->getName()
от v5. +
use Illuminate\Support\Facades\Route;
$currentPath= Route::getFacadeRoot()->current()->uri();
Ларавел 5.3
Route::currentRouteName(); //use Illuminate\Support\Facades\Route;
Или если вам нужно название действия
Route::getCurrentRoute()->getActionName();
Вы можете найти все о маршрутах Laravel в Laravel API:
http://laravel.com/api/5.0/Illuminate/Routing/Router.html
http://laravel.com/api/5.0/Illuminate/Routing.html
Получение URI запроса
Метод path возвращает URI запроса. Итак, если входящий запрос нацелен на http://example.com/foo/bar
метод пути вернет foo/bar
:
$uri = $request->path();
is
Метод позволяет проверить, что URI входящего запроса соответствует заданному шаблону. Вы можете использовать *
символ в качестве подстановочного знака при использовании этого метода:
if ($request->is('admin/*')) {
//
}
Чтобы получить полный URL, а не только информацию о пути, вы можете использовать метод url в экземпляре запроса:
$url = $request->url();
Используя Laravel 5.1, вы можете использовать
\Request::route()->getName()
Нашел способ найти текущее название маршрута работ для laravel v5 , v5.1.28 а также v5.2.10
Пространство имен
use Illuminate\Support\Facades\Route;
а также
$currentPath= Route::getFacadeRoot()->current()->uri();
Для Laravel Laravel v5.3 Вы можете просто использовать:
use Illuminate\Support\Facades\Route;
Route::currentRouteName();
Если тебе надо URL, не название маршрута, вам не нужно использовать / требовать другие классы:
url()->current();
Если вы хотите выбрать меню на нескольких маршрутах, вы можете сделать так:
<li class="{{ (Request::is('products/*') || Request::is('products') || Request::is('product/*') ? 'active' : '') }}"><a href="{{url('products')}}"><i class="fa fa-code-fork"></i> Products</a></li>
Или, если вы хотите выбрать только одно меню, вы можете просто сделать так:
<li class="{{ (Request::is('/users') ? 'active' : '') }}"><a href="{{url('/')}}"><i class="fa fa-envelope"></i> Users</a></li>
Также проверено в Ларавел 5.2
Надеюсь, это поможет кому-то.
Laravel 5.2 Вы можете использовать
$request->route()->getName()
Это даст вам текущее название маршрута.
В 5.2 вы можете использовать запрос напрямую с:
$request->route()->getName();
или с помощью вспомогательного метода:
request()->route()->getName();
Пример вывода:
"home.index"
Кратчайший путь — это Фасадный маршрут
\Route::current()->getName()
Это также работает в Laravel 5.4. *