• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

php数组的循环遍历

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
<?php
	header(\'content-type:text/html;charset=utf-8\');


//php数组的循环操作
	$arr=array(\'luowen\',\'age\',\'salary\',\'address\');
//method 1 先计算数组的长度,有count($arr)函数计算php数组的长度,javascript数组的长度是有个length属性
	$length=count($arr);
	for($i=0;$i<$length;$i++){
		echo $arr[$i];		
	}
//数组的键没有规律的时候,我们可以选择foreach来循环出数组的值
	$arr1=array(\'name\'=>\'luowen\',\'age\'=>12,\'salary\'=>512422,\'address\'=>\'sun\');
//类似这样的数组,我们就可以用foreach来取值
	foreach($arr as $key=>$val){
		echo $val;
	}
//注:$key变量就对应数组里的键,$val变量就对应数组里的值foreach内部指针会循环后自动的想后移动.

//选用php的游标操作也可以循环数组
//current ,key, next ,prev,reset,end;
	$arr2=array(\'东邪\',\'西毒\',\'南帝\',\'北丐\',\'中通\');
	echo current($arr2);//输出东邪,取出数组$arr2里面的第一个值;
	next($arr2);//让数组向后移动一个单元
	echo current($arr2);//此时指针向后移动了一个单元,取值:\'西毒\'!
	prev($arr2);//此时将数组向前移动一个单元取值:\'东邪\';
	reset($arr2);//将数组的指针重置到开头;
	echo current($arr2);//此时数组移动回到了开头的指针取值:\'东邪\'
	end($arr2);//将数组指针移动到了尾部取值:\'中通\'

//注:上述操作就像我们中学时期学的游标,我们可以将游标向左移动,向右移动,移动到开头,移动到最后;
	//我们可以用游标操作模拟出foreach的功能;


	function for_each($arr){
			while(current($arr)){
				echo current($arr)."<br/>";
				next($arr);
			}
		
	}
	for_each($arr2);
//这样也是可以遍历数组的,但是上面数组会有个毛病
$arrDemo=array(\'东邪\',\'西毒\',0,\'北丐\',\'中通\');
	for_each($arrDemo);
//这样只输出了前面两个current(0)就不执行了

//each可以解决问题
	while($ciel=each($arr2)){
		echo $ciel[0].$ciel[1].\'<br/>\';
	}
/*each 函数给没个数组的一个单元分配了一个数组表示,返回的一个数组例如
each给\'东邪\'分配了一个数组;
Array
(
    [1] => 东邪
    [value] => 东邪
    [0] => 0
    [key] => 0
)
这样就能避免current(null)的毛病
*/

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【转】用PHP为iOS做推送服务发布时间:2022-07-10
下一篇:
php数组函数-array_intersect()发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap