PHP数组遍历的五种方法

for

对于纯数字索引的数组可以通过for循环来遍历数组,但是要注意的是数字索引必须是连续的,否则会获取不到数组中的部分数据。遍历不受数组内部指针影响。

"a","2"=>"c","d");
$len=count($ar1);
for($i=0;$i<$len;$i++){
    echo $ar1[$i]."\n";
}
?>

foreach

foreach可以遍历任何类型的数组,可以只遍历值,也可以同时遍历键和值。遍历不受数组内部指针影响。

"a","2"=>"c","d");
foreach($ar1 as $k=>$v){
    echo "$k=>$v\n";
}
foreach($ar2 as $k =>$v){
    echo "$k=>$v\n";
}
foreach ($ar2 as $v) {
    echo "$v\n";
}
?>

while/do...while、each

each函数以数组形式返回数组中当前的键/值对并将数组指针向前移动一步,each函数在PHP7.2后被移除。如果想要再次从头遍历需要重置数组内部指针。

".$kv[1].",".$kv['key']."=>".$kv['value']."\n";
}
?>

while/do...while、list、each

通过list函数接受each返回的数组键/值对。如果想要再次从头遍历需要重置数组内部指针。

$v\n";  
}
?>

while/do..while、key、next/prev、current

通过数组的next、prev等可操作数组内部指针的函数进行遍历。

"a",1=>"b",false=>"c",3=>false,"d",null=>false,"f");
while(key($ar3)!==null){
    echo key($ar3)."=>".current($ar3)."\n";
    next($ar3);
}
?>

 

你可能感兴趣的:(数组,遍历,PHP)