怎么在PHP中将二维数组转换成一维数组

  介绍

这篇文章主要介绍了怎么在PHP中将二维数组转换成一维数组,小编觉得不错,现在分享给大家,也给大家做个参考,一起跟随小编来看看吧!

PHP有什么用

PHP是一个嵌套的缩写名称,指的是英文超级文本预处理语言(PHP:超文本预处理器)的缩写,它的语法混合了C、Java、Perl以及PHP自创新的语法,主要用来做网站开发,许多小型网站都用PHP开发,因为PHP是开源的,从而使PHP经得久不衰。

假设有下面一个二维数组:

user 美元;=,阵列(   & # 39;才能0 & # 39;,=祝辞,数组(& # 39;id # 39;,=祝辞,100年,& # 39;用户名# 39;,=祝辞,& # 39;a1 # 39;),   & # 39;才能1 & # 39;,=祝辞,数组(& # 39;id # 39;,=祝辞,101年,& # 39;用户名# 39;,=祝辞,& # 39;a2 # 39;),   & # 39;才能2 & # 39;,=祝辞,数组(& # 39;id # 39;,=祝辞,102年,& # 39;用户名# 39;,=祝辞,& # 39;a3 # 39;),   & # 39;才能3 & # 39;,=祝辞,数组(& # 39;id # 39;,=祝辞,103年,& # 39;用户名# 39;,=祝辞,& # 39;a4 # 39;),   & # 39;才能4 & # 39;,=祝辞,数组(& # 39;id # 39;,=祝辞,104年,& # 39;用户名# 39;,=祝辞,& # 39;a5 # 39;),   );

现在要转换成一维数组,有两种情况:

一种是将指定列转换成一维数组,这在另一篇文章有总结:PHP提取多维数组指定一列的方法总结。

现在我们重点讲第二种情况,就是把所有的值都转换成一维数组,而且键值相同不会被覆盖,转换后的一维数组是这样的:

result 美元;=,数组(100年,& # 39;a1 # 39;,, 101,, & # 39; a2 # 39;,, 102,, & # 39; a3 # 39;,, 103,, & # 39; a4 # 39;,, 104,, & # 39; a5 # 39;);

主要有下面几个方法。

<强> 1的形式函数法

用形式()函数是较为快捷的方法:

result 美元;=,形式(用户、美元,function (因此,美元,美元值),{   return 才能;array_merge(因此,美元,元素(值)美元);   },,数组())

因为array_merge函数会把相同字符串键名的数组覆盖合并,所以必须先用array_value取出值后再合并。

如果第二维是数字键名,如:

user 美元;=,阵列(   & # 39;才能一个# 39;,=祝辞,数组(100年,& # 39;a1 # 39;),   & # 39;才能b # 39;,=祝辞,数组(101年,& # 39;a2 # 39;),   & # 39;才能c # 39;,=祝辞,数组(102年,& # 39;a3 # 39;),   & # 39;才能d # 39;,=祝辞,数组(103年,& # 39;a4 # 39;),   & # 39;才能e # 39;,=祝辞,数组(104年,& # 39;a5 # 39;),   );

那么直接这样就可以了:

result 美元;=,形式($ user, & # 39; array_merge& # 39;,,数组())

<强> 2 array_walk_recursive函数法

用array_walk_recursive()函数就非常灵活,可以把任意维度的数组转换成一维数组。

result 美元;=,[];   array_walk_recursive ($ user,函数(美元值),use (,因此美元),{   array_push才能(因此,美元,美元值);   });

例如,下面这个多维数组:

user4 美元;=,阵列(   & # 39;才能一个# 39;,=祝辞,数组(100年,& # 39;a1 # 39;),   & # 39;才能b # 39;,=祝辞,数组(101年,& # 39;a2 # 39;),   & # 39;才能c # 39;,=祝辞,阵列(   ,,,& # 39;d # 39;,=祝辞,数组(102年,& # 39;a3 # 39;),   ,,,& # 39;e # 39;,=祝辞,数组(103年,& # 39;a4 # 39;),   ),才能   );

用这个方法后就变成:

result 美元;=,数组(100年,& # 39;a1 # 39;,, 101,, & # 39; a2 # 39;,, 102,, & # 39; a3 # 39;,, 103,, & # 39; a4 # 39;);

<强> 3到函数法

用到和形式函数的方法类似,如下:

result 美元;=,[];   到function (美元值),use (,因此美元),{   时间=美元才能result  array_merge(因此,美元,元素(值)美元);   },$ user);

只是需要多声明一个空的结果数美元组。

另外,也可以用array_walk的方法,和foreach循环的方法,原理和上面一样。

以上就是小编为大家收集整理的怎么在PHP中将二维数组转换成一维数组,如何觉得网站的内容还不错,欢迎将网站推荐给身边好友。

怎么在PHP中将二维数组转换成一维数组