- 基本的な使い方: eachメソッドは、コレクション内の各要素に対して指定した処理を適用します。以下は基本的な使い方の例です。
$collection = collect([1, 2, 3, 4, 5]);
$collection->each(function ($item, $key) {
echo "Key: {$key}, Value: {$item}\n";
});
出力結果:
Key: 0, Value: 1
Key: 1, Value: 2
Key: 2, Value: 3
Key: 3, Value: 4
Key: 4, Value: 5
- 条件付きの処理: eachメソッドを使って、特定の条件に基づいて処理を行うこともできます。以下は条件付きの処理の例です。
$collection = collect([1, 2, 3, 4, 5]);
$collection->each(function ($item, $key) {
if ($item % 2 == 0) {
echo "Key: {$key}, Value: {$item} is even.\n";
} else {
echo "Key: {$key}, Value: {$item} is odd.\n";
}
});
出力結果:
Key: 0, Value: 1 is odd.
Key: 1, Value: 2 is even.
Key: 2, Value: 3 is odd.
Key: 3, Value: 4 is even.
Key: 4, Value: 5 is odd.
- キーと値の変更: eachメソッドを使って、コレクション内の要素のキーと値を変更することもできます。以下はキーと値の変更の例です。
$collection = collect(['name' => 'John', 'age' => 30]);
$collection->each(function (&$item, $key) {
$item = strtoupper($item);
$key = strtoupper($key);
});
$collection->each(function ($item, $key) {
echo "Key: {$key}, Value: {$item}\n";
});
出力結果:
Key: NAME, Value: JOHN
Key: AGE, Value: 30
このように、Laravel Collectionのeachメソッドを使用することで、コレクション内の要素を簡単に反復処理することができます。適切な条件や処理を指定することで、さまざまな操作を実行できます。以上がeachメソッドの基本的な使い方といくつかのコード例です。