php若干单维数组遍历方法的比较

前端之家收集整理的这篇文章主要介绍了php若干单维数组遍历方法的比较前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

<div class="codetitle"><a style="CURSOR: pointer" data="24226" class="copybut" id="copybut24226" onclick="doCopy('code24226')"> 代码如下:

<div class="codebody" id="code24226">
<?PHP
//a
$arr=array('a'=>'abc','b'=>123,'c'=>true);
//b
//$arr=range('a','d');
//1
for($i=0;$i<sizeof($arr);$i++)
echo $arr[$i].',';
echo '
';
//2
foreach($arr as $key)
echo "$key,";
echo '
';
//3
foreach($arr as $key=>$val)
echo "$key-$val,";
echo '
';
//4
reset($arr);
while($item=each($arr)){
echo $item['key'].'-'.$item['value'].',';
}
echo '
';
//5
reset($arr);
while(list($key,$val)=each($arr)){
echo "$key-$val,";
}
echo '
';
?>

使用语句a $arr=array('a'=>'abc','c'=>true); 对$arr进行初始化得到数字索引数组,输出如下:
,
abc,123,1,
a-abc,b-123,c-1,使用语句b $arr=range('a','d'); 对$arr进行初始化得到关联数组,输出如下:
a,b,c,d,
a,
0-a,1-b,2-c,3-d,for循环只对数字索引有限;for和foreach遍历结束后不需要对数据进行reset()操作即可供下次遍历,而each方法则需要。

猜你在找的PHP相关文章