PHP如何使用array_column()函数从多维数组中获取指定列的值组成新数组?

在PHP中,array_column()函数是一个非常实用的函数,它可以从多维数组中获取指定列的值组成新数组。本文将详细介绍如何使用array_column()函数,以及一些使用技巧。

1. array_column()函数的基本用法

array_column()函数的基本用法非常简单,只需要传入两个参数:要处理的数组和要获取的列的键名。函数会返回一个新数组,包含指定列的值。

$students = [
    ['name' => 'Tom', 'age' => 20, 'score' => 90],
    ['name' => 'Jerry', 'age' => 22, 'score' => 95],
    ['name' => 'Alice', 'age' => 21, 'score' => 88],
];

$names = array_column($students, 'name');
print_r($names);

上面的代码将会输出:

Array
(
    [0] => Tom
    [1] => Jerry
    [2] => Alice
)

可以看到,通过array_column()函数,我们成功地从$students数组中获取了'name'列的值组成了一个新数组$names。

2. 多维数组中获取指定列的值

array_column()函数不仅可以处理一维数组,还可以处理多维数组。我们来看一个例子:

$students = [
    ['name' => 'Tom', 'age' => 20, 'score' => 90],
    ['name' => 'Jerry', 'age' => 22, 'score' => 95],
    ['name' => 'Alice', 'age' => 21, 'score' => 88],
];

$scores = array_column($students, 'score');
print_r($scores);

上面的代码将会输出:

Array
(
    [0] => 90
    [1] => 95
    [2] => 88
)

可以看到,通过array_column()函数,我们成功地从多维数组$students中获取了'score'列的值组成了一个新数组$scores。

3. 指定键名作为新数组的键

如果我们希望新数组的键名是原数组的某个键名,可以将要获取的列的键名作为第三个参数传给array_column()函数。

$students = [
    ['name' => 'Tom', 'age' => 20, 'score' => 90],
    ['name' => 'Jerry', 'age' => 22, 'score' => 95],
    ['name' => 'Alice', 'age' => 21, 'score' => 88],
];

$scoreByName = array_column($students, 'score', 'name');
print_r($scoreByName);

上面的代码将会输出:

Array
(
    [Tom] => 90
    [Jerry] => 95
    [Alice] => 88
)

可以看到,通过array_column()函数,我们成功地从多维数组$students中获取了'score'列的值,并将'name'列作为新数组的键。

总结

array_column()函数是PHP中非常实用的函数之一,可以方便地从多维数组中获取指定列的值。通过本文的介绍,相信大家已经掌握了array_column()函数的基本用法和一些使用技巧。希望本文对初学者在使用该函数时有所帮助。

猿教程
请先登录后发表评论
  • 最新评论
  • 总共0条评论