ホームページ > 記事 > PHPフレームワーク > laravelルーティングは何をするのでしょうか?
laravel では、ルーティングの役割は、ユーザーのさまざまな URL リクエストを対応するプログラムに転送して処理することです; ルーティングは、外部の世界が laravel アプリケーションにアクセスする方法であり、ルーティングは、Laravel アプリケーションがどのようにサービスを提供するかを定義します。具体的には、laravelのルーティングはroutesフォルダに定義されています。
#この記事の動作環境: Windows 10 システム、Laravel バージョン 6、Dell G3 コンピューター。
ルーティングの役割は、ユーザーのさまざまな URL リクエストを、処理のために対応するプログラムに転送することです。Laravel のルーティングは、routes フォルダーに定義されており、4 つのルーティング ファイル。web.php ファイルで基本的なページ リクエストが定義されます。
laravel では、ルーティングは外部の世界が Laravel アプリケーションにアクセスするための方法、またはルーティングは Laravel アプリケーションが外部の世界にサービスを提供する特定の方法を定義します。ルーティングは、事前に計画された計画に従って、ユーザーのリクエストを指定されたコントローラーおよびメソッドに送信して処理します。
基本的なルーティング
最も基本的なルーティング リクエストは get リクエストと post リクエストで、Laravel は Route オブジェクトを通じてさまざまなリクエスト メソッドを定義します。たとえば、URL 'req' で get リクエストを定義し、文字列 'get response' を返します。
Route::get('req',function (){undefined return 'get response'; });
get メソッドで http://localhost/Laravel/laravel52/public/req をリクエストすると、戻り値が返されます。次のように:
同様に、投稿リクエストを定義するときは、Route::post(url,function(){});
を使用します。複数のリクエストのルーティング
複数のリクエスト メソッドに同じ処理を使用する場合は、match または any を使用できます。
match を使用して、対応するリクエスト メソッドと一致させます。たとえば、次のようになります。 get または when post リクエスト req2 を使用すると、一致する応答が返されます:
Route::match(['get','post'],'req2',function (){undefined return 'match response'; });
any は、任意のリクエスト メソッドに一致します。たとえば、req3 がいずれかのメソッドでリクエストされた場合、任意の応答が返されます:
Route::any('req3',function (){undefined return 'any response'; });
リクエスト パラメータ
必須パラメータ: パラメータを含むリクエストを送信する場合、ルート内で受信できます。パラメータを囲み、/ で区切るには中括弧を使用します。たとえば、 :
Route::get('req4/{name}/{age}', function ($name, $age) {undefined return "I'm {$name},{$age} years old."; });
With get リクエスト時にパラメータを渡すと、結果は次のようになります:
オプションのパラメータ: 上記のパラメータは必須です。が欠落している場合、エラーが報告されます。パラメータをオプションにしたい場合は、それに ? を追加してデフォルト値を設定できます。デフォルト パラメータは最後のパラメータである必要があります。それ以外の場合は、パラメータを配置しても認識されません中央:
Route::get('req4/{name}/{age?}', function ($name, $age=0) {undefined return "I'm {$name},{$age} years old."; });
定期的な検証: リクエスト内のパラメーターを確認する場所を使用できます。 Verify
Route::get('req4/{name}/{age?}', function ($name, $age=0) {undefined return "I'm {$name},{$age} years old."; })->where(['name'=>'[A-Za-z]+','age'=>'[0-9]+']);
ルーティング グループ
場合によってはルートたとえば、第 1 レベルのルート ホームを定義し、その下に第 2 レベルのルート記事を定義するなど、複数のレベルを持つことができます。これには、記事とコメントをホーム グループに配置する必要があります。配列キー プレフィックス
Route::group(['prefix' => 'home'], function () {undefined Route::get('article', function () {undefined return 'home/article'; }); });
を使用してプレフィックス home をルート アーティクルに追加し、home/article を通じてルートにアクセスできるようにします。
ルートの名前付け
ルートに名前を付ける必要がある場合は、ルートを定義するときに as 配列キーを使用してルート名を指定する必要があります。たとえば、ルートに home/comment comment という名前を付けた場合、URL とリダイレクトを生成するときにルート名のコメントを使用できます。
Route::get('home/comment',['as'=>'comment',function(){undefined return route('comment'); //通过route函数生成comment对应的url }]);
出力は http://localhost/Laravel/laravel52/public/home/ となります。コメント
【関連する推奨事項: laravel ビデオチュートリアル】
以上がlaravelルーティングは何をするのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。