📌  相关文章
📜  Arr::flatten() Arr::flatten 方法将一个多维数组展平为一个单级数组: (1)

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

将多维数组展平为单级数组 - Arr::flatten()

在PHP中,有时候我们需要将一个多维数组展成一个单级数组,可以使用Laravel框架中的Arr::flatten()方法。这个方法可以将多维数组转换为一个一维数组。

语法
Arr::flatten($array, $depth)
  • $array: 需要展平的数组。
  • $depth: 可选的参数,指定展平的深度,默认值为INF,表示展平所有维度。
示例
$array = [
    'name' => 'John',
    'age' => 30,
    'languages' => [
        'PHP',
        'Java',
        'Python',
        'Ruby',
    ],
    'contact' => [
        'email' => 'john@example.com',
        'phone' => [
            'home' => '123-456-7890',
            'work' => '987-654-3210',
        ],
    ],
];

$flatArray1 = Arr::flatten($array);
print_r($flatArray1);  // 输出: ['John', 30, 'PHP', 'Java', 'Python', 'Ruby', 'john@example.com', '123-456-7890', '987-654-3210']

$flatArray2 = Arr::flatten($array, 1);
print_r($flatArray2);  // 输出: ['John', 30, 'PHP', 'Java', 'Python', 'Ruby', 'john@example.com', ['home' => '123-456-7890', 'work' => '987-654-3210']]

上面的示例中,我们定义了一个多维数组$array,然后使用Arr::flatten()方法将它展平为单级数组,分别展示了不同深度的展平结果。

结束语

Arr::flatten()方法是Laravel框架中提供的一种非常方便的数组处理方法,可以帮助我们快速、方便地将一个多维数组展平为一个单级数组,更好地适应我们的业务需求。需要注意的是,如果你的数组非常多层嵌套,展平后可能会导致数组无限增长,所以需要根据情况合理使用。