この記事は、筆者がLaravelを触り始めた時にメモ用で書いたものです。
実際にコーディングする際は、ご利用のバージョンに合った公式ドキュメントとGitHubのソースコードを見て実装してください。筆者は数年Laravelを書いていません。ご了承ください。
※必ず下記のGitHubのリポジトリのREADME.mdを読んで、適したバージョンのソースコードと公式ドキュメントを読んでください。
誰かが書いた古い記事を参考にコーディングをするのは危険です。
Laravelのクエリビルダーの戻り値(or 返り値)
もし「いいね」がついたら他のメソッドのものも追加してまとめ化する。
メソッド | 返り値(型) | 返り値(例) | コメント |
---|---|---|---|
save | boolean | true, false | 成功の結果 |
create | object | {id:1,name: テスト} | 新規作成したレコード |
insert | boolean | true, false | 成功の結果 |
update | integer | 0, 1, 10など | 影響を与えたレコード数 |
delete | integer | 0, 1, 10など | 影響を与えたレコード数 |
first | object | {id:1,name:テスト} | レコード1件 / 無ければ 5.1→NULL, 5.3→{} |
時間のある時に取得系も追加していくつもり…
insert
新規登録が完了したかの正否を論理値で返却する。
つまり、true/false
のboolean
で返してくれる。
update
影響を受けたレコード件数を返す。
つまり、0や1や10などのinteger
で返してくれる。
delete
影響を受けたレコード件数を返す。
つまり、0や1や10などのinteger
で返してくれる。
失敗談
updateやdeleteもboolean
で返却してくれると思って下記のようなコードを書いてデバックしてました。。。
確かに0が来ていれば更新はしていないんですが…
$res = DB::table('hoge')
->where('id', $id)
->update([
'name' => $name
]);
// 別クラスで
if (!$res) '更新に失敗';