在PHP中,有时我们需要从一个二维数组中提取一列数据进行处理,这时可以使用PHP内置函数array_column(),它可以轻松地将一个二维数组中的某一列提取出来。
语法:array_column(array $input, mixed $column_key[, mixed $index_key])
参数说明:
下面我们来看一个实际的例子:
$students = array(
array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85),
);
// 提取成绩列
$scores = array_column($students, 'score');
print_r($scores);
上述代码中,我们有一个$students数组,包含3个学生的信息。我们使用array_column()函数提取了$students数组中的score列,保存到$scores数组中,然后使用print_r()函数输出了$scores数组的值。
运行以上代码,我们可以看到输出:
Array
(
[0] => 80 [1] => 90 [2] => 85
)
可以看到,$scores数组中只包含了$students数组中的score列的值,而没有包含其他列的值。
另外,如果我们想在$scores数组中使用id作为索引key,可以在array_column()函数中传入第三个参数:
$students = array(
array('id' => 1, 'name' => 'Tom', 'score' => 80), array('id' => 2, 'name' => 'Jack', 'score' => 90), array('id' => 3, 'name' => 'Mary', 'score' => 85),
);
// 提取成绩列,并使用id作为索引key
$scores = array_column($students, 'score', 'id');
print_r($scores);
输出结果:
Array
(
[1] => 80 [2] => 90 [3] => 85
)
我们可以看到,$scores数组中每个元素的key都是原始数组中每个学生的id,而值则是对应的成绩。
总结:
在处理二维数组时,PHP内置函数array_column()是一个非常实用的工具,它可以轻松地提取目标列,避免了重复写循环查找每个键值的繁琐操作,大幅提高了开发效率。
以上是使用PHP array_column()获取数组列的详细内容。更多信息请关注PHP中文网其他相关文章!