1. ホーム
  2. php

[解決済み】Laravel: どのように現在のルート名を取得するには?(v5 ... v7)

2022-04-02 06:29:13

質問

Laravel v4では、現在のルート名を取得することができましたが、これは...

Route::currentRouteName()

で行うにはどうすればよいのでしょうか? Laravel v5 Laravel v6 ?

解決方法は?

これを試してみてください

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

または

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

v5.1より

use Illuminate\Support\Facades\Route;
$currentPath= Route::getFacadeRoot()->current()->uri();

Laravel v5.2

Route::currentRouteName(); //use Illuminate\Support\Facades\Route;

または、アクション名が必要な場合

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

Laravel 5.2ルートドキュメント

リクエストURIの取得

pathメソッドは、リクエストのURIを返します。ですから、もし入ってくるリクエストの対象が http://example.com/foo/bar の場合、pathメソッドは foo/bar :

$uri = $request->path();

is メソッドを使用すると、受信したリクエスト URI が指定したパターンにマッチするかどうかを確認することができます。このメソッドでは * 文字をワイルドカードとして使用します。

if ($request->is('admin/*')) {
    //
}

パス情報だけでなく完全なURLを取得するには、リクエストインスタンスのurlメソッドを使用することができます。

$url = $request->url();

Laravel v5.3 ... v5.8

$route = Route::current();

$name = Route::currentRouteName();

$action = Route::currentRouteAction();

Laravel 5.3 のルートに関するドキュメント

Laravel v6.x...7.xの場合

$route = Route::current();

$name = Route::currentRouteName();

$action = Route::currentRouteAction();

** 2019年11月11日現在、バージョン6.5 **です。

Laravel 6.x のルートに関するドキュメント

ルートを取得するためにリクエストを使用するオプションがあります。

$request->route()->getName();