PHP数组foreach后使用current取值的问题

  先看如下的代码

$arr=['a','b','c'];
foreach ($arr as $v){
    echo $v.'<br>';
}
var_dump(current($arr));

今天给公司做项目的时候莫名其妙遇到了这个问题

由于自己本地的环境是PHP7.0,输出结果是

a
b
c
string 'a' (length=1)

反而跑到服务器上成了这个而结果(服务器上的PHP版本是5.6):

a
b
c
bool(false)

不用问,一定是foreach以后指针出问题了

所以保险起见,还是先reset一下:

$arr=['a','b','c'];
foreach ($arr as $v){
    echo $v.'<br>';
}
reset($arr);
var_dump(current($arr));

这样就没问题了!

本文来自博客园,作者:Bin_x,转载请注明原文链接:https://www.cnblogs.com/Bin-x/p/5748169.html

原文地址:https://www.cnblogs.com/Bin-x/p/5748169.html