[Laravel] ルーティングについて
- 2020年6月12日
- 技術情報
ルーティングとは「ブラウザで入力されたURL」(リクエストURL)と、Laravelのコントローラを紐付ける方法です。
今回はLaravelのルーティングについての説明をおこないたいと思います。
ルーティングパラメータ
例えば、「http://myhomepage.com/book/123」のようにURL内にパラメータを含ませることがあります。上記の例ではBookID「123」の書籍情報を取得するためのURLパラメータです。
Laravelのコントローラーでルーティングパラメータを取得するには以下のように記述します。
Route::get('book/{id}','BookController@param')
上記引数内の「{}」部分がルーティングパラメータのプレースホルダーを示しています。
「{}」部分には「123」のように自由な値を埋め込めるように指定可能です。
今回は仮に「id」と設定していますがパラメータ名は任意で設定が可能です。
BookControllerの中にparamメソッドを追加して引数に「$id」を指定することで、URLパラメータで設定された値を受け取ることが可能です。
public function param(int $id){
return '入力されたIDは'.$id.'です';
}
またルーティングを設定する際には、正規表現で値の型を指定することも可能です。
Route::get('book/{id}','BookController@param')
->where(['id'=>'[0-9]{3}']);
上記の例ではidパラメータが3桁の数値であることを示しています。
金曜日担当: nishida
nishida at 2020年06月12日 10:00:10