douzi8112 2017-05-17 04:36

将多维数组转换为单个数组

can you please help me with my code, I'm having a hard time in transforming my multidimensional array to a single array

this is my multidimensional array:

``````array:2 [
0 => array:3 [
0 => "tuesday"
1 => "thursday"
]
1 => array:3 [
0 => "monday"
1 => "wednesday"
2 => "friday"
]
]
``````

this is what I'm trying to do:

``````array:["tuesday","thursday","monday","wednesday","friday"]
``````

this is my code

``````\$day = [
0 => array:3 [
0 => "tuesday"
1 => "thursday"
]
1 => array:3 [
0 => "monday"
1 => "wednesday"
2 => "friday"
]
];
\$days = [];

\$lent = count(\$day);
for (\$x=0; \$x < \$lent ; \$x++) {
\$lengt = count(\$data[\$x]);
for (\$i=0; \$i < \$lengt; \$i++) {
\$days[\$x] = \$day[\$x][\$i];
}
}
``````
• 写回答

3条回答默认 最新

• du67560 2017-05-17 04:41
关注

Easy:

``````\$flattened = [];
foreach (\$mdarray as \$arr) {
foreach (\$arr as \$val) {
\$flattened[] = \$val;
}
}
``````

What the above code does is it iterates through the multi-dimensional array, gets the value of each subarray, and adds its elements to `\$flattened`.

If you're using PHP 5.6+, this code is simpler:

``````\$flattened = array_merge(...\$mdarray);
``````
本回答被题主选为最佳回答 , 对您是否有帮助呢?
评论

悬赏问题

• ¥15 我下载图形界面重启完就变成这样了，打字也打不了，动也动不了，该怎么解决(操作系统-centos)
• ¥15 VBA中在窗体中遍历所有checkbox控件，提取出被选中的checkbox的caption值
• ¥15 在Ubuntu上有什么命令，或者是系统文件能告诉我链接nvme ssd的pcie槽位是不是支持热插拔功能？