PHPバージョン:7.1.14
Laravelバージョン:5.7.9
前回まででModel、View、Controllerと
MVC全てを使うところまできました!
今回はModelで使用したEloquentについてです!
Eloquentとは
Eloquentは、Laravelに標準搭載されているORMです。
ORMはObject-Relational-Mappingのことで、
データベースとモデル間を対応づける機能です。
データベースのデータをLaravel上でオブジェクトのように扱い、
変換を意識することなくLaravel上のデータをデータベースへ登録することができます。
前回の記事にもEloquentのallメソッドが登場しましたが、
all以外にもEloquentには様々なものがあるので紹介します。
all
$articles = Article::all();
articlesテーブルにある全データを取得できます。
allで取得するデータはCollectionクラスの配列です。
foreach文などでそのまま使うことができます。
first
$article = Article::first();
最初のレコードを1つ取得します。
最初というのはprimary_keyを基準にしています。(デフォルトだとid)
Model型として取得されます。
この場合だとArticle型です。
find
$article = Article::find($id);
引数に指定したidのレコードを取得します。
Model型で取得されます。
where
$articles = Article::where('id', 1)->get();
条件にマッチしたレコードだけを取得します。
whereの第一引数にテーブルのカラム名、第二引数に値をセットします。
Builder型で取得されますが、そのまま使うことはできません。
クエリービルダーと呼ばれる機能を使って取り出します。
(Eloquentはクエリービルダーでもあるので、クエリービルダーのメソッドを使うことができます。)
クエリービルダーのget()メソッドを実行することで、
Collection型の配列を取得できます。
今回はここまでです、ありがとうございました〜!