PHP/Laravel

【Laravel6】Collection のインスタンスに値を追加する方法

こんにちは、シロウ(@shiro_life0)です。

最近、暇つぶしにLaravel6で新しいWebアプリを作成しているのですが、

Eloquentで複数レコードを取得して、返ってきたCollectionを継承したクラスのインスタンス)に値を追加するのってどうしたらいいんだろう?

という疑問が浮かびました。

言葉で解説するとちょっと難しいですが、要するにControllerのshowアクションとかで

$task = Task::findOrFail($id);

こんな感じで、Model操作をしてレコードを複数取得した時のインスタンス(今回は「$tasks」)に値を追加したいって話です。

Collectionインスタンスに値を追加する方法

値を追加するのはむっちゃ簡単でした。

下記のようにすればいいだけです。

$task['sample'] = 'サンプル';

これでcollectionに値が追加できました。
確認してみましょう。

dd($task);

上記のように「dd()」とすれば、デバックすることができます。

確認すると僕の場合は下記のようになってますが、

Larave、collection

追加後は下記のようになっています。

LaravelのCollectionに値が追加された

無事追加されていることが確認出来ましたね。

よし、これにて今回は終了です。

それではまた(*・ω・)ノ