在单个多维数组上进行数组映射、展平和取消设置
Array map, flatten, and unset on a single multidimensional array
我有一个格式的多维数组:
Array
(
[0] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 101
[1] => 101
)
[1] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 102
[1] => 102
)
[2] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 201
[1] => 201
)
)
我正在尝试执行三个操作:
- 使用 [0] 和 [1] 键取消设置所有元素,
- 合并每个子数组中的 [course_prefix] 和 [course_number] 值,
- 展平为单个数组
这样最后的结果就是
Array
(
"AERO 101",
"AERO 102",
"AERO 201"
)
我知道 array_map
可以组合两个不同的数组,并且 unset
删除元素,但是当所有内容都在同一个多维数组中时我该如何执行这些操作 - 例如取消设置不在顶层的元素,并合并值?
很简单array_map
:
$new_array = array_map(function($row) {
return $row['course_prefix'] . ' ' . $row['course_number'];
}, $array);
我有一个格式的多维数组:
Array
(
[0] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 101
[1] => 101
)
[1] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 102
[1] => 102
)
[2] => Array
(
[course_prefix] => AERO
[0] => AERO
[course_number] => 201
[1] => 201
)
)
我正在尝试执行三个操作:
- 使用 [0] 和 [1] 键取消设置所有元素,
- 合并每个子数组中的 [course_prefix] 和 [course_number] 值,
- 展平为单个数组
这样最后的结果就是
Array
(
"AERO 101",
"AERO 102",
"AERO 201"
)
我知道 array_map
可以组合两个不同的数组,并且 unset
删除元素,但是当所有内容都在同一个多维数组中时我该如何执行这些操作 - 例如取消设置不在顶层的元素,并合并值?
很简单array_map
:
$new_array = array_map(function($row) {
return $row['course_prefix'] . ' ' . $row['course_number'];
}, $array);