ホームページ > PHPフレームワーク > Laravel > さまざまな種類のURLアドレスを生成および取得するlaravelの概要

さまざまな種類のURLアドレスを生成および取得するlaravelの概要

齐天大圣
リリース: 2020-12-17 08:58:16
オリジナル
2000 人が閲覧しました

URL を生成する機能はどのフレームワークにも必須の機能ですが、Laravel では URL を生成するためのメソッドがいくつか提供されています。以下を見てみましょう。

補助関数 url

補助関数 url は任意の URL を生成できます。ドメイン名が指定されていない場合は、このシステムのドメイン名が生成されます。デフォルトで使用されます。

echo url('http://baidu.com');  //http://baidu.com
echo url('/users/get/3');  // http://localhost:8000/user/get/3
ログイン後にコピー

現在の URL を取得する

現在の URL を取得するには、前のページのアドレスを取得する以外にもさまざまな方法があります。ただし、これらの方法にはいくつかの違いがあります。

echo url()->current(); 
echo url()->full();
echo url()->previous();
ログイン後にコピー

現在の URL アドレスが http://www.example.com/news/1?a=b&c=d,

current の場合、このメソッドは現在の url() を取得できます。ただし、クエリ文字列 (つまり?a=b&c=d) は取得できませんが、full は完全なパスを取得できます。

上記の方法に加えて、laravel の応答を通じて現在の URL アドレスを取得することもできます。

  • $request->path() このメソッドは現在のリクエストのパスのみを取得できますが、ドメイン名とクエリ文字列を取得することはできません

  • $request->url() このメソッドは url()->current() と同じように使用されますが、クエリ文字列を取得できません。 >fullUrl( ) このメソッドは url()->full() と同じ効果があり、完全な URL アドレスを取得できます。

  • #ルートの名前付け URL

ルートの名前を設定することがよくあります。設定後、これを使用できます。 name を使用してルートの URL アドレスを取得します。デモ コードを以下に示します。 最初にルートの名前を設定します。コードは次のとおりです。

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

次に、ルートの URL アドレスを取得できます。

echo route('news');
ログイン後にコピー

If this ルートにパラメータがある場合は、route の 2 番目のパラメータを通じてルーティング パラメータを設定できます。デモ コードは次のとおりです。

Route::get('/news/page/{page}/page_num/{pageNum}', function ()
{

})->name('news');
ログイン後にコピー

URL を設定するコードは次のとおりです。

echo route('news', ['page' => 1, 'page_num' => 15]);
ログイン後にコピー

コントローラーの URL

#コントローラーの URL アドレスはプロジェクトでもよく使用されます。コントローラーの URL は、アクション関数を通じて取得されます。以下はデモ コードです:

$url = action('IndexController@index');
ログイン後にコピー
コントローラー メソッドでルーティング パラメーターが必要な場合は、アクションの 2 番目のパラメーターを介して渡すことができます。デモコードは次のとおりです:
$url = action('IndexController@index', ['id' => 1]);
ログイン後にコピー
推奨: "laravel Framework

"

以上がさまざまな種類のURLアドレスを生成および取得するlaravelの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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