LaravelでCRUD機能を持つ簡単なブログを製作中
製作過程で調べたこと、忘れたくないことを記録中
PHPでフォームのデータを受け取る
PHPでは、POST/GETリクエストで送信したデータは
$_POST/GET(スーパーグローバル変数)を使ってデータの受け取りを行う。
※POSTとGETの違い
・POST:データの登録、書き換えが必要なリクエストに利用する
例)ユーザー登録、SNSやブログなどの投稿
・GET:データの受け取りに使用される
例)ブラウザの検索、ページ遷移
※リクエストの送信内容がURLに表示される
※
PHPのスーパーグローバル変数には$_REQUESTというものもあるらしい。
これはPOST, GET, COOKIEのすべてを一つにまとめたスーパーグローバル変数とのこと。
じゃあ全部$_REQUESTにしたらPOSTとGETを間違えてしまうこともないからいいじゃん!
と思ったが、どうやらそれは良くないらしい
POSTとGETはしっかり区別して使用した方が色んな面で良いらしい
(色んな面は勉強中)
Laravelでフォームのデータを受け取る
方法:Requestクラスを使う
例)ブログの投稿を受け取る
public function sample(Request $request) {
$title = $request->title;
$post = $request->post;
}
※Requestクラスをつかうためには
use Illuminate\Http\Request;
が必要
※メソッドインジェクション(依存注入)
関数の引数にクラスと変数を入れることで、指定の変数に、指定したクラスのインスタンスを入れることができる
・メリット:コードの簡略化
public function sample() {
$request = new Request();
$request->all();
}
↓
public function sample(Request $request) {
$request->all();
}
と、new 変数();のインスタンス生成を省略することができる
RequestクラスはHTTPリクエストに関するデータ処理をまとめたようなクラス?
と一旦解釈しましたが、まだ勉強中です。