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方法则需要。

相关文章

WordPress中Gravatar头像缓存到本地及相关优化的技巧

将Gravatar全球通用头像缓存的目的在于加快网站的打开速度,因为Gravatar官网的服务器在国外,加上伟大的GFW,国内打开速度经常很慢。方法来自willin,不过貌似他的网站已经...

基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据

废话不多说,直接给大家贴代码了,代码附有注释,相信大家都能看懂的,有不明白的地方欢迎给我留言。 前端HTML+JQuery  备注Jquery需要1.x版本,不能用2.x版本...

PHP自定义图片缩放函数实现等比例不失真缩放的方法

本文实例讲述了PHP自定义图片缩放函数实现等比例不失真缩放的方法。分享给大家供大家参考,具体如下: function resizeImage($im,$maxwidth,$maxhe...

详解PHP多个进程配合redis的有序集合实现大文件去重

详解PHP多个进程配合redis的有序集合实现大文件去重

1.对一个大文件比如我的文件为 -rw-r--r-- 1 ubuntu ubuntu 9.1G Mar 1 17:53 2018-12-awk-uniq.txt 2.使用split命令切...

Linux Apache PHP Oracle 安装配置(具体操作步骤)

Oracle 就不说了,Linux 是 CentOS。1. 安装 httpd(apache)yum install httpd -y 2. 安装 php, php-gd, php-mcr...