📜  php 集合到数组 - PHP (1)

📅  最后修改于: 2023-12-03 15:03:44.033000             🧑  作者: Mango

PHP集合到数组

在PHP中,集合是一个对象数组,因此我们可以将集合转换为常规数组,以便在处理中更方便地使用。

通过toArray()方法实现

可以通过在集合上调用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"
]

无论使用那种方式,都可以方便地将集合对象转换为标准数组进行处理。