Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP foreach原理详解

PHP foreach原理详解

不言
不言asal
2018-04-24 09:54:401666semak imbas

这篇文章介绍的内容是关于PHP foreach原理详解 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

PHP foreach原理详解

  • 当 foreach 开始执行时,数组内部的指针会自动指向第一个单元。这意味着不需要在 foreach 循环之前调用 reset()怎么来理解这个呢?

$arr = array(1,2,3);foreach($arr as $k=>$v){

}
var_dump(current($arr));foreach($arr as $key=>$value){    echo $value." ";
}
var_dump(current($arr));

结果:boolean false

     1 2 3

     boolean false
  • 加深foreach理解

$arr = array(&#39;a&#39;=>1,&#39;b&#39;=>2,&#39;c&#39;=>3);foreach($arr as $k=>$v){    $v*=2;    echo $v."<br />";
}
var_dump($arr);foreach($arr as $key=>$value){    $arr[$key]=$value*2;
}
var_dump($arr);//传入&foreach($arr as &$v){    $v=$v*2;
}$v = 0


var_dump($arr)

结果

246array (size=3)  &#39;a&#39; => int 1
  &#39;b&#39; => int 2
  &#39;c&#39; => int 3array (size=3)  &#39;a&#39; => int 2
  &#39;b&#39; => int 4
  &#39;c&#39; => int 6array (size=3) (不加 $v = 0)  &#39;a&#39; => int 4
  &#39;b&#39; => int 8
  &#39;c&#39; => &int 12array (size=3) (加 $v = 0)  &#39;a&#39; => int 4
  &#39;b&#39; => int 8
  &#39;c&#39; => 0

相关推荐:

php在foreach循环后留下数组的引用问题

PHP中foreach引用传地址

php中foreach使用&引用后的异常处理

               

Atas ialah kandungan terperinci PHP foreach原理详解 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:PHP代码执行漏洞总结Artikel seterusnya:mac os下配置nginx+php7.1+fastcgi