モデルのコレクションをモデルの配列に変換する 質問する

モデルのコレクションをモデルの配列に変換する 質問する

モデルが 2 つあり、Post多くCommentのコメントが 1 つの投稿に属しています。投稿に関連付けられたすべてのコメントに配列としてアクセスしようとしています。

次のようなコレクションがあります。

$comments_collection = $post->comments()->get()

$comments_collectionこれを配列に変換するにはどうすればよいですか? Eloquent リレーションシップを通じてこの配列にアクセスするより直接的な方法はありますか?

ベストアンサー1

使用できますtoArray()以下のように雄弁に述べます。

このtoArrayメソッドはコレクションをプレーンなPHP配列に変換します。コレクションの値がEloquentモデルの場合、モデルも配列に変換されます。

$comments_collection = $post->comments()->get()->toArray()

Laravel ドキュメントより:

toArrayは、Arrayableのインスタンスであるコレクションのネストされたオブジェクトをすべて配列に変換します。生の配列を取得したい場合は、全て代わりにメソッドを使用します。

おすすめ記事