假设我们有一个二维数组:
PHP
$multi_dim_array = array(
"苹果" => array("红","绿","黄"),
"香蕉" => array("黄","橙","紫"),
);
实现方法
1、创建一个空的一维数组,用于存放转换后的数据。
2、使用array_walk()函数遍历二维数组的每一个元素。
3、在遍历过程中,判断当前元素是否为数组,如果是数组,则递归调用上述过程,将子数组转换为一维数组;如果不是数组,则直接将元素添加到一维数组中。
4、最后返回转换后的一维数组。
下面是具体的代码实现:
PHP
function multi_dim_to_one($multi_dim_array, &$result) {
foreach ($multi_dim_array as $key => $value) {
if (is_array($value)) {
multi_dim_to_one($value, $result);
} else {
$result[] = $value;
}
}
}
$multi_dim_array = array(
"苹果" => array("红","绿","黄"),
"香蕉" => array("黄","橙","紫"),
);
$result = array();
multi_dim_to_one($multi_dim_array, $result);
print_r($result);