2017年3月14日火曜日

Laravel5.4で、Eloquent ORMで得た値を「id」列をキーとした配列にする

Laravel5.4で、Eloquent ORMで得た値を「id」列をキーとした配列にする方法です。コレクション(Collections)のkeyBy()メソッドを利用すると、簡単に実現できます。もちろん、keyBy('○○')の指定を変えれば、指定した列をキーにした配列になります。実に、エレガント!

$blogs = Blog::where('active', 1)
      ->orderBy('published_at', 'desc')
      ->get()
      ->keyBy('id')
      ->toArray();

参考サイト
Eloquent column list by key with array as values?(Stack Overflow)

0 件のコメント:

コメントを投稿