Laravelジャンプルーティング

PHPz
リリース: 2023-05-29 09:33:07
オリジナル
782 人が閲覧しました

Laravel は、多くの便利な機能とメソッドを提供する人気の PHP フレームワークで、開発者は効率的で保守可能なアプリケーションを迅速に開発できます。 Laravel では、ルーティングは開発者がアプリケーションの URL を定義できるようにする非常に重要な概念です。

Laravel では、ユーザーのログイン後に別のページにジャンプしたり、フォームが送信された後に別のページにジャンプしたりするなど、ジャンプ ルーティングは非常に一般的な要件です。この記事ではLaravelのジャンプルートとその使い方を紹介します。

1. 名前付きルートにジャンプします

Laravel では、名前付きルート (Named Route) はルートを定義する非常に便利な方法です。ルートの名前を定義すると、コード内でこの名前を使用して URL を生成したり、このルートにジャンプしたりできます。以下は例です:

Route::get('user/profile', function () {
    //
})->name('profile');
ログイン後にコピー

ここでは、「profile」という名前のルートを定義します。このルートにジャンプする必要がある場合は、次のコードを使用できます:

return redirect()->route('profile');
ログイン後にコピー

このメソッドは、ルート名をパラメーターとして指定し、そのルートにリダイレクトする応答を返します。パラメーターをルートに渡したい場合は、2 番目のパラメーターで渡すことができます。例:

return redirect()->route('profile', ['id' => 1]);
ログイン後にコピー

ここでは、「id」という名前のパラメーターをルートに渡しており、その値は 1 です。次に、ターゲット ルートで、次のようなコードを使用してこのパラメータを取得できます。

Route::get('user/{id}', function ($id) {
    //
})->name('profile');
ログイン後にコピー

ここでは、$id 変数を使用して、渡されたパラメータにアクセスできます。

2. コントローラー メソッドにジャンプする

Laravel では、ルートのハンドラーとしてコントローラー メソッドを定義し、このコントローラー メソッドにジャンプすることもできます。以下に例を示します。

Route::get('user/profile', 'UserController@showProfile');
ログイン後にコピー

ここでは、「showProfile」という名前のコントローラー メソッドをルートのハンドラーとして定義します。このコントローラー メソッドにジャンプする必要がある場合は、次のコードを使用できます。

return redirect()->action('UserController@showProfile', ['id' => 1]);
ログイン後にコピー
ログイン後にコピー

このメソッドは、パラメーターとしてコントローラー メソッド名を受け取り、コントローラー メソッドにリダイレクトする応答を返します。コントローラー メソッドにパラメーターを渡したい場合は、次のように 2 番目のパラメーターで渡すことができます。

return redirect()->action('UserController@showProfile', ['id' => 1]);
ログイン後にコピー
ログイン後にコピー

ここでは、「id」という名前のパラメーターをコントローラー メソッドに渡しています。値は 1 です。次に、ターゲット コントローラー メソッドで、次のようなコードを使用してこのパラメーターを取得できます。

public function showProfile($id)
{
    //
}
ログイン後にコピー

ここでは、$id 変数を使用して、渡されたパラメーターにアクセスできます。

3. URL にジャンプ

Laravel では、ルートやコントローラー メソッドを定義せずに、任意の URL に直接ジャンプすることもできます。以下に例を示します。

return redirect('user/profile');
ログイン後にコピー

ここでは、ターゲット URL をリダイレクト関数に直接渡し、その URL にリダイレクトされた応答を返すことができます。

パラメータを渡す必要がある場合は、URL でクエリ文字列 (クエリ文字列) パラメータを使用できます。例:

return redirect('user/profile?id=1');
ログイン後にコピー

ここでは、「id」という名前のクエリ文字を使用します。ターゲット URL に渡される文字列パラメータの値は 1 です。次に、ターゲット ページで、次のようなコードを使用してこのパラメータを取得できます。

$id = request('id');
ログイン後にコピー

ここでは、request() ヘルパー関数を使用して、リクエスト内のクエリ文字列パラメータを取得します。

概要

この記事では、名前付きルートへのジャンプ、コントローラーメソッドへのジャンプ、URL へのジャンプなど、Laravel でのジャンプルーティングについて紹介しました。実際の開発では、これらのジャンプ ルートは非常に役立ち、目的のページに素早くジャンプでき、開発効率とユーザー エクスペリエンスを向上させることができます。

以上がLaravelジャンプルーティングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート