Php foreach-为什么迭代时它不会覆盖数组值?

Log*_*gan 12 php foreach

我对php foreach迭代有疑问.

请看下面的代码.

代码:

   $arr=array(1,2,3);

    echo '$arr value : '. $arr;

    echo '<br>';

    foreach($arr as $arr){
        echo $arr.'<br>';
    }
    echo '$arr value : '. $arr;
Run Code Online (Sandbox Code Playgroud)

输出:

$arr value : Array
1
2
3
$arr value : 3
Run Code Online (Sandbox Code Playgroud)

虽然迭代数组我使用相同的数组名称值键值,foreach($arr as $arr)但它工作正常.它是如何工作的?

为什么迭代时它不会覆盖数组值?

我想知道foreach迭代是如何工作的.

请帮我!

在此先感谢洛根

Emi*_*röm 13

为什么迭代时它不会覆盖数组值?

foreach将处理原始数组的副本,因此您在foreach循环中更改的内容不会更改您循环的值.