ルーティングの基本(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文字~~+∞という意味
//可変長は長さが決まっていないことを挿す
Author And Source
この問題について(ルーティングの基本(laravel,PHP)), 我々は、より多くの情報をここで見つけました https://qiita.com/mutturiprin/items/6a4718831d2a20a3240b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .