php遍历数组与数组指针

来源:转载

在学习php的时候,使用数组,就会用到数组指针,这个指针和C语言的指针有点类似,不过现在我使用的感受是感受是它不像C语言那样需要先声明定义一个指针变量,而是每个数组自带的。这样比感觉比C语言方便了许多,所以在php中使用指针的时候就要用到一下几个函数(如果指针没有移动,默认指向array[0]位置):
1.key():返回数组当前指针元素的索引;
2.current():返回当前指针元素的值;
3.next():指针向前移动一位,并返回移动后指针指向的值;如果超出数组元素的末尾,则放回false;
4.prev():将指针往回移动一位,并返回指针元素的值,如果指针原来来就指向数组的第一个位置,则返回false;
5:reset():将指针指向第一个元素,并返回第一个元素的值;
6.end():将指针指向最后一个元素,并返回最后一个元素的值;
7.each():返回当前指针元素的键和值,并将指针推进一个位置;
8:list():把数组中的值赋给一些变量;

/*遍历数组*/ /*for循环遍历*/ echo '使用for遍历$ArrLetter数组:'; $count = count($ArrLetter); echo current($ArrLetter); echo reset($ArrLetter); for ($i=0; $i <$count ; $i++) { echo $ArrLetter[$i]; echo next($ArrLetter); } echo "<br/>"; /*使用数组指针遍历*/ $ArrFruits2 = array("apple","orange","banana"); echo "使用数组指针遍历:"."<br/>"; echo current($ArrFruits2);echo "<br/>"; each($ArrFruits2); echo current($ArrFruits2);echo "<br/>"; next($ArrFruits2); echo current($ArrFruits2);echo "<br/>"; end($ArrFruits2); print_r(each($ArrFruits2)); echo "<br/>"; /*使用list()函数把数组中的值赋给变量*/ echo "使用list()函数把数组中的值赋给变量:"."<br/>"; list($fruit1,$fruit2,$fruit3) = $ArrFruits2; echo $fruit1." ".$fruit2." ".$fruit3."<br/>"; /*使用其他循环语句*/ echo "使用do-while语句遍历数组:"; $ArrFruits4 = array("apple","orange","banana"); do{ echo key($ArrFruits4)." ".current($ArrFruits4); }while(next($ArrFruits4)); echo "<br/>"; reset($ArrFruits4); //将数组指针指向第一个元素 echo "使用while语句遍历数组:"; while ($arr = each($ArrFruits4)) { echo $arr['key'].' '.$arr['value']; } echo "<br/>"; reset($ArrFruits4); //将数组指针指向第一个元素 echo "使用while语句遍历数组:"; while(list($key,$value) = each($ArrFruits4)){ echo $key." ".$value; } echo "<br/>"; /*foreach循环遍历*/ $ArrProduct = array( 'pname'=>'NOKIA N97', 'price'=>'1500', 'pubtime'=>'2008', ); //注意“,”和“;” echo "使用foreach遍历数组:".'<br/>'; if (is_array($ArrProduct)&&!empty($ArrProduct)) { foreach ($ArrProduct as $key => $value) { echo $key.":".$value."<br/>"; } } echo "<br/>";

分享给朋友:
您可能感兴趣的文章:
随机阅读: