时间:2021-07-01 10:21:17 帮助过:20人阅读
实现方法:
Ⅰ 使用递归调用;
Ⅱ 首先定义一个静态数组常量用来保存结果;
Ⅲ 对多维数组进行循环;
Ⅳ 判断是否是数组,如果是递归调用方法;
Ⅴ 如果不是,将结果放入静态数组常量;
Ⅵ 返回结果(静态数组常量)。
实现代码:
<?php
/**
* =======================================
* Created by Zhihua_W.
* Author: Zhihua_W
* Date: 2016/11/28 0003
* Time: 上午 9:11
* Project: PHP开发小技巧
* Power: 实现多维数组转化为一维数组
* =======================================
*/
/**
* 多维数组转化为一维数组
* @param array $array 多维数组
* @return array $result_array 一维数组
*/
function array_multi2single($array)
{
//首先定义一个静态数组常量用来保存结果
static $result_array = array();
//对多维数组进行循环
foreach ($array as $value) {
//判断是否是数组,如果是递归调用方法
if (is_array($value)) {
array_multi2single($value);
} else //如果不是,将结果放入静态数组常量
$result_array [] = $value;
}
//返回结果(静态数组常量)
return $result_array;
}
$arr = array(
array(
'name' => 'a',
'sex' => 'm',
'sort' => 5
),
array(
'name' => 'c',
'sex' => 'm',
'sort' => 8
),
array(
'name' => 'g',
'sex' => 'm',
'sort' => 3
),
array(
'name' => 'e',
'sex' => 'w',
'sort' => 6
),
array(
'name' => 'b',
'sex' => 'w',
'sort' => 2
),
);
print_r(array_multi2single($arr));
?>打印结果,实现多维数组转化为一维数组:
Array
(
[0] => a
[1] => m
[2] => 5
[3] => c
[4] => m
[5] => 8
[6] => g
[7] => m
[8] => 3
[9] => e
[10] => w
[11] => 6
[12] => b
[13] => w
[14] => 2
)以上就是PHP开发技巧(三)-多维数组转化为一维数组的代码详解的详细内容,更多请关注Gxl网其它相关文章!