- pluckメソッドを使用する方法:
$collection = collect([
['name' => 'John', 'age' => 30],
['name' => 'Jane', 'age' => 25],
['name' => 'Bob', 'age' => 35]
]);
$column = $collection->pluck('name');
dd($column);
出力結果:
Illuminate\Support\Collection^ {#xxx ▼
#items: array:3 [▼
0 => "John"
1 => "Jane"
2 => "Bob"
]
}
- mapメソッドを使用する方法:
$collection = collect([
['name' => 'John', 'age' => 30],
['name' => 'Jane', 'age' => 25],
['name' => 'Bob', 'age' => 35]
]);
$column = $collection->map(function ($item) {
return $item['name'];
});
dd($column);
出力結果:
Illuminate\Support\Collection^ {#xxx ▼
#items: array:3 [▼
0 => "John"
1 => "Jane"
2 => "Bob"
]
}
- eachメソッドとpluckメソッドを組み合わせて使用する方法:
$collection = collect([
['name' => 'John', 'age' => 30],
['name' => 'Jane', 'age' => 25],
['name' => 'Bob', 'age' => 35]
]);
$column = collect();
$collection->each(function ($item) use ($column) {
$column->push($item['name']);
});
dd($column);
出力結果:
Illuminate\Support\Collection^ {#xxx ▼
#items: array:3 [▼
0 => "John"
1 => "Jane"
2 => "Bob"
]
}
これらの方法を使用すると、Laravelのコレクション内のすべての連想配列から1つの列を取得することができます。お使いの環境や好みに応じて、最適な方法を選択してください。