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

yipeiwu_com5年前PHP代码库
复制代码 代码如下:

<?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 '<br />';
//2
foreach($arr as $key)
echo "$key, ";
echo '<br />';
//3
foreach($arr as $key=>$val)
echo "$key-$val, ";
echo '<br />';
//4
reset($arr);
while($item=each($arr)){
echo $item['key'].'-'.$item['value'].', ';
}
echo '<br />';
//5
reset($arr);
while(list($key,$val)=each($arr)){
echo "$key-$val, ";
}
echo '<br />';
?>

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

相关文章

PHP 命名空间实例说明

复制代码 代码如下:namespace bak\ba\ba; function bab(){ echo "bi"; } namespace kkk; function k1(){ ech...

php+html5基于websocket实现聊天室的方法

本文实例讲述了php+html5基于websocket实现聊天室的方法。分享给大家供大家参考。具体如下: html5的websocket 实现了双向通信,折腾了几天弄了个聊天室,分享给大...

php实现的单一入口应用程序实例分析

本文较为详细的分析了php单一入口应用程序。分享给大家供大家参考。具体如下: 什么是单一入口应用程序? 在解释什么是单一入口应用程序之前,我们先来看看传统的 web 应用程序。 news...

PHP中单例模式的使用场景与使用方法讲解

单例模式按字面来看就是指某一个类只存在一个实例,这一点其实是与静态方法是相同的,只存在一个实例的好处是当我们需要使用某个类时只需要实例化一次,不需要每次都去new,极大的降低了资源的耗费...

PHP中break及continue两个流程控制指令区别分析

以下举例说明break 用来跳出目前执行的循环,并不再继续执行循环了。 复制代码 代码如下: <?php $i = 0; while ($i < 7) { if ($arr[...