在平常的项目开发中我们多会用到让多维数组转化为一维数组的情况,但是很多programmer不会将其进行转化,也有些没有想到很好的算法然后经过乱起八糟的运算方式将其勉强转化好,但是所写的程序代码冗余非常的大,造成程序的时间复杂度以及空间复杂度非常大。下面就讲述一下我是如何实现这一情况,并且代码简单明了。
实现方法:
Ⅰ 使用递归调用;
Ⅱ 首先定义一个静态数组常量用来保存结果;
Ⅲ 对多维数组进行循环;
Ⅳ 判断是否是数组,如果是递归调用方法;
Ⅴ 如果不是,将结果放入静态数组常量;
Ⅵ 返回结果(静态数组常量)。
实现代码:
'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));
?>打印结果,实现多维数组转化为一维数组:
立即学习“PHP免费学习笔记(深入)”;
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
)











