【Laravel】【collection】コレクションの便利な集計関数

2021年9月29日

こんにちは。今回はLaravelのコレクションで使える集計関数を紹介していきます。サンプルコードはtinkerで実行しています。

コレクションとは

コレクションとは配列形式のデータを便利に処理できるLaravelの機能です。集計や編集をするためのメソッドが多数実装されています。コレクションはcollectメソッドに元となる配列を指定して作成します。

>>> $collection = collect(['tanaka','sato','suzuki']);

これで配列がコレクションオブジェクトになりました。コレクションが正しく作成されたか確認してみましょう。コレクションのデータを全て出力するにはallメソッドを使用します。

>>> $collection->all();
=> [
     "tanaka",
     "sato",
     "suzuki",
   ]

作成されていることが確認できました。

集計関数の紹介

ここからはよく使う集計処理をコレクションで処理していきたいと思います。

データ件数(count)

データ件数を出力するためにはcountメソッドを使用します。

>>> $collection = collect(['tanaka','sato','suzuki']);
>>> $collection->count();
=> 3

合計(sum)

ある要素の合計を出力するにはsumメソッドを使用します

>>> $collection = collect([1,2,3,4,5]);
>>> $collection->sum();
=> 15

平均(avg)

平均を出力するにはavgメソッドを使用します。(averageも同様の動きをします)

>>> $collection = collect([1,2,3,4,5]);
>>> $collection->avg();
=> 3

最大(max)、最小(min)

最大、最小はmax,minメソッドを使用します。

>>> $collection = collect([1,2,3,4,5]);
>>> $collection->max();
=> 5
>>> $collection->min();
=> 1

Laravel

Posted by kobainmac