イントロダクション

Illuminate\Support\Collectionクラスは、配列データを操作するための、書きやすく使いやすいラッパーです。以下の例をご覧ください。配列から、新しいコレクションインスタンスを作成するために、collectヘルパーを使用しています。

$collection = collect(['taylor', 'abigail', null])->map(function($name)
{
    return strtoupper($name);
})
->reject(function($name)
{
    return is_null($value);
});

ご覧の通り、Collectionクラスは、裏にある配列をマップし要素削除するメソッドをチェーンでスムーズにつなげてくれます。つまり、全てのCollectionメソッドは、新しいCollectionインスタンスを返します。より掘り下げますので、続けて読み進めてください!

基本的な使用法

コレクションの生成

上記の通り、collectヘルパーは指定された配列を元に、新しいIlluminate\Support\Collectionインスタンスを返します。また、Collectionクラスのmakeメソッドを使うこともできます。

$collection = collect([1, 2, 3]);

$collection = Collection::make([1, 2, 3]);

もちろん、Eloquentオブジェクトのコレクションは、いつもCollectionインスタンスを返します。しかし、アプリケーションで便利に使えるなら、どこででもCollectionクラスを自由に使ってください。

コレクションの詳細

コレクションで使用できるメソッド全部(たくさんあります)をここではリストしません。代わりに、クラスのAPIドキュメントをご覧ください。