深入理解PHP之数组

现象:

使用current( 数组)有时无法获取数组的当前值。

问题原因:

可能在current( 数组)之前有使用foreach( )遍历过该数组。

解释要点:

①current(数组 )是获取数组中当前指针所指内容,若超出数组界限,则返回false。

②使用foreach( )遍历数组后,指针会停留在最后,这时若使用current(数组),会返回false。

③使用reset(数组)可以重置指针。

④将使用foreach( )遍历过的数组赋值给另一个变量后,也会重置该数组的指针。

示例代码:

①一般情况下,

结果:屏幕快照 2015-06-12 上午11.56.56

 

②使用foreach遍历数组后,

结果:

屏幕快照 2015-06-12 上午11.59.33

③使用reset( )重置指针,

结果:屏幕快照 2015-06-12 下午12.01.14

④使用赋值实现重置指针:

结果:屏幕快照 2015-06-12 下午12.01.14

 

【参考:】

http://www.laruence.com/2009/08/23/1065.html

http://php.net/manual/en/function.current.php

http://www.w3school.com.cn/php/func_array_current.asp

发表评论