>백엔드 개발 >PHP 튜토리얼 >看别人的PHP代码有一点不明白

看别人的PHP代码有一点不明白

WBOY
WBOY원래의
2016-06-06 20:27:221326검색

<code>foreach ($data as &$e) {}
和
foreach ($data as $e) {}

有什么区别?</code>

回复内容:

<code>foreach ($data as &$e) {}
和
foreach ($data as $e) {}

有什么区别?</code>

<code class="php">$data = [1,2,3];
foreach($data as &$e){
    $e+=1;
}
var_dump($data);//[2,3,4]
unset($e);

$data = [1,2,3];
foreach($data as $e){
    $e+=1;
}
var_dump($data);//[1,2,3]</code>

楼上很清晰,再给两个链接:

http://php.net/manual/en/control-structures.foreach.php

http://php.net/manual/en/language.references.php

一个是引用,作用于原值本身;一个是使用,不会更改原值。

不加&的话,就相当于内部复制了一个变量去使用,不会修改原本的值,地址也不会有改变。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.