Help us understand the problem. What is going on with this article?

ルーティングの基本(laravel,PHP)

web.php
//特定のHTTPメソッドに対応する場合

Route:○○('viewのパスを記入','コントローラー@アクションメソッド');

//複数のHTTPメソッドに対応する場合

Route::match(['〇〇','〇〇'],'viewのパスを記入','コントローラー@アクションメソッド');
//※['〇〇','〇〇']に指定した複数のメソッドを対応させることが可能

//全てのHTTPメソッドに対応する場合

Route::any('viewのパスを記入','コントローラー@アクションメソッド');

ルーティング情報をコントローラから取得する場合(ルートパラメーター)

web.php
#自動的に対応する値を引数に割り当ててる場合
Route::get('viewのパスを記入/{id}','コントローラ名@アクションメソッド');
#任意の値を引数に割り当てる場合
Route::get('viewのパスを記入/{id?}','コントローラ名@アクションメソッド');
#ルートパラメータを制限したい場合
Route::get('viewのパスを記入/{id}','コントローラ名@アクションメソッド')->where([id =>'[0-9],{2,3}'])
//[0-9]->0~9までの数値に対応
//{2,3} ->10桁から100桁の数値に対応
//定義済み関数のpreg_matchと同じ 
〇〇controller.php
#自動的に対応する値を引数に割り当ててる場合
class Controller extends Controller
{
    public function param(int $id){ 
        return 'id:'.$id;

    }

//.....
〇〇controller.php
#任意の値を引数に割り当てる場合
class Controller extends Controller
{
    public function param(int $id =任意の値){ 
        return 'id:'.$id;

    }

//.....
〇〇controller.php
#正規表現の場合
class Controller extends Controller
{
    public function param(int $id =任意の値){ 
    //※任意の値はルートパラメータで制約しているため従う必要がある
    //例:現在は[0~9],{2-3}に指定しているので 0〜9の数値で尚且つ100桁までの数値を定義する必要がある
     return 'id:'.$id;

    }

//.....

web.php
//可変長パラメータ
Route::get('viewのパスを記入{keywd?}','コントローラ@アクションメソッド')>where('keywd','.*')
//('keywd','.*') ->任意の文字が0文字~~+∞という意味
//可変長は長さが決まっていないことを挿す





mutturiprin
自分用のメモ書きです
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away