PHP foreach把二维数组遍历成为一维数组(就是怎么样降维)???

$arr=array(
"1"=>array("one"=."PHP","two"=>"C++","three"=>"C#"),
"2"=>array("four"=."Android","five"=>"javascript","six"=>"object-c")
);
请用foreach遍历以下 最好每一步都有详细的注释!!谢谢!! 还有 二维数组应该怎么样理解?跪求大神给详细解答以下。。谢谢!!

如果重复怎么处理?是否需要做区分?


如果忽略重复和反向还原,那么直接用array_merge即可

$new_arr = array_merge($arr['1'],$arr[2]);


foreach:

foreach($arr as $v=>$k){
    foreach($v as $val=>$key){
        $new_arr[$key] = $val;
    }
}

追问

foreach后边又有一个foreach是什么意思? 能不能把你写的大体给解释一下??

追答

$arr是第一层数组
1和2是属於第二层数组

第一个foreach是循环出1和2
第二个foreach是把1和2的内容都循环出来赋值给一个新的数组

一维数组:
$arr=array(1);
二维数组:
$arr=array(1=>array(1));
三维数组:
$arr=array(1=>array(1=>array(1)));

简单点来说你可以这样理解:
1维数组是一个班,每个元素是一个士兵
2维数组是一个排,每个元素是一个班
3维数组是一个连,每个元素是一个排
如此类推。

不过底层数组的元素允许是空或NULL。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答