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

yipeiwu_com6年前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屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT

PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT

PHP屏蔽蜘蛛访问代码代码: 常用搜索引擎名与 HTTP_USER_AGENT对应值 百度baiduspider 谷歌googlebot 搜狗sogou 腾讯SOSOsosospide...

PHP将身份证正反面两张照片合成一张图片的代码

具体代码如下,前面部分是面条代码,后面是封了一个函数,便于反复使用。注意函数前面的注释说明,因为不想给这个函数搞太多参数,所以有一些配置项就写死在函数里面了。 <?ph...

PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)

举例来说,假设我们的项目想要使用 monolog 这个日志工具,就需要在composer.json里告诉composer我们需要它: { "require": { "monol...

九个你必须知道而且又很好用的php函数和特点

下面是九个PHP中很有用的功能,不知道你用过了吗?1. 函数的任意数目的参数你可能知道PHP允许你定义一个默认参数的函数。但你可能并不知道PHP还允许你定义一个完全任意的参数的函数下面是...

php处理文件的小例子(解压缩,删除目录)

复制代码 代码如下:<?php  $dir =   './temp';$desc   =   'tar_tes...