目的: 将二维数组中的每一个元素输出
首先定义一个二维数组
//定义数组
$arr = array(array('北京','上海','深圳','广州'),array('黑龙江','吉林','辽宁','江苏')
); 
一 for循环输出
1.1 直接输出
//for循环遍历数组
for($i = 0; $i < count($arr); $i++) {for($j = 0; $j < count($arr[$i]); $j++) {echo $arr[$i][$j]."<br />";}
} 
结果是这样
北京
上海
深圳
广州
黑龙江
吉林
辽宁
江苏
1.2 或者将循环出来的所有元素放到一个新的一维数组中,输出一维数组
//for循环遍历数组
for($i = 0; $i < count($arr); $i++) {for($j = 0; $j < count($arr[$i]); $j++) {$arrs[] = $arr[$i][$j];}
}
var_dump($arrs); 
结果是这样
array (size=8)0 =>  '北京' (length=6)1 =>  '上海' (length=6)2 =>  '深圳' (length=6)3 =>  '广州' (length=6)4 =>  '黑龙江' (length=9)5 =>  '吉林' (length=6)6 =>  '辽宁' (length=6)7 =>  '江苏' (length=6) (size=8)0 =>  '北京' (length=6)1 =>  '上海' (length=6)2 =>  '深圳' (length=6)3 =>  '广州' (length=6)4 =>  '黑龙江' (length=9)5 =>  '吉林' (length=6)6 =>  '辽宁' (length=6)7 =>  '江苏' (length=6) 
二 使用foreach
2.1 直接输出元素
foreach ($arr as $key => $value) {foreach ($value as $k => $v) {echo $v."<br>";}
} 
北京
上海
深圳
广州
黑龙江
吉林
辽宁
江苏
2.2 将元素放到新数组中,转化为一维数组,重新输出
foreach ($arr as $key => $value) {foreach ($value as $k => $v) {$arrs[] = $v; }
}
var_dump($arrs); 
array (size=8)0 =>  '北京' (length=6)1 =>  '上海' (length=6)2 =>  '深圳' (length=6)3 =>  '广州' (length=6)4 =>  '黑龙江' (length=9)5 =>  '吉林' (length=6)6 =>  '辽宁' (length=6)7 =>  '江苏' (length=6) (size=8)0 =>  '北京' (length=6)1 =>  '上海' (length=6)2 =>  '深圳' (length=6)3 =>  '广州' (length=6)4 =>  '黑龙江' (length=9)5 =>  '吉林' (length=6)6 =>  '辽宁' (length=6)7 =>  '江苏' (length=6)
 
总结:
foreach和for循环效果是一样的,foreach只是for循环的一种封装而已,简便了for循环中的部分操作