1、for
只支持索引数组,不支持关联数组
1 2 3 4 5 | $array = ['a','b','c','d']; for ($i=0;$i<count($array);$i++) { echo $array[$i].'-'; } |
2、foreach
索引数组和关联数组都可以
1 2 3 4 | foreach ($array as $key => $value) { echo $value.'-'; } |
3、while(), list(), each() 结合
实质上是指针移动;支持索引数组和关联数组
注意:each() 在7.2以上版本已被弃用,会报 warning 警告错误
1 2 3 4 5 | while ( list($key,$value)=each($array) ) { echo '|'.$value.'-'; echo current($array); } |
4、数组指针
指针移动;支持索引数组和关联数组
1 2 3 | do { echo current($array); } while ( next($array) ); |
拓展
foreach 和 list 可以嵌套解包
$array = [['a','b'],['c','d'],['e','f']]; foreach($array as list($a,$b)) { echo $a.'-'.$b; }