<?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)的毛病 */
请发表评论