首页 > 编程知识 正文

php中遍历数组,php数组遍历

时间:2023-05-04 07:29:19 阅读:237912 作者:3211

for

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

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

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

<?php$ar1=range('a','e');$ar2=array_combine($ar1,range(1,5));$ar1=array(0=>"a","2"=>"c","d");foreach($ar1 as $k=>$v){ echo "$k=>$vn";}foreach($ar2 as $k =>$v){ echo "$k=>$vn";}foreach ($ar2 as $v) { echo "$vn";}?> while/do...while、each

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

<?php$ar1=range('a','e');$ar2=array_combine($ar1,range(1,5));while($kv=each($ar2)){ echo $kv[0]."=>".$kv[1].",".$kv['key']."=>".$kv['value']."n";}?> while/do...while、list、each

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

<?php$ar1=range('a','e');$ar2=array_combine($ar1,range(1,5));while(list($k,$v)=each($ar2)){ echo "$k=>$vn"; }?> while/do..while、key、next/prev、current

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

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

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。