📅  最后修改于: 2023-12-03 15:03:44.033000             🧑  作者: Mango
在PHP中,集合是一个对象数组,因此我们可以将集合转换为常规数组,以便在处理中更方便地使用。
可以通过在集合上调用toArray()方法将其转换为数组。这个方法返回一个数组,其中包含了集合中的所有对象。
$collection = collect(['Apple', 'Banana', 'Orange']);
$array = $collection->toArray();
结果是:
array:3 [
0 => "Apple"
1 => "Banana"
2 => "Orange"
]
默认情况下,toArray()方法返回一个数组,其中键是从0开始的顺序数字。 但是,可以传递键回调函数来自定义键值对。
$collection = collect([
['name' => 'John', 'email' => 'john@example.com'],
['name' => 'Mark', 'email' => 'mark@example.com'],
['name' => 'Sarah', 'email' => 'sarah@example.com'],
]);
$array = $collection->toArray(function ($item, $key) {
return [strtoupper($item['name']) => $item['email']];
});
结果是:
[
"JOHN" => "john@example.com",
"MARK" => "mark@example.com",
"SARAH" => "sarah@example.com",
]
还可以使用PHP的类型转换强制将集合对象转换为数组。
$collection = collect(['Apple', 'Banana', 'Orange']);
$array = $collection->all();
结果是:
array:3 [
0 => "Apple"
1 => "Banana"
2 => "Orange"
]
无论使用那种方式,都可以方便地将集合对象转换为标准数组进行处理。