$a=array(1 => "A");
$b=&$a[1];
$c=$a;
$c[1]="C";
echo $a[1];
输出:C(但我希望输出为 A)
显然,数组没有被“ = ”符号引用。
$c=$a; < 这应该复制 $a 并将其分配给 $c 。但是为什么这里会发生引用呢?
此外,如果我们简单地删除第二行($b=&$a[1];),或将其替换为($b=&$a;),它的行为与预期一样。
关于为什么会发生这种情况的任何解释?
$a=array(1 => "A");
$b=&$a[1];
$c=$a;
$c[1]="C";
echo $a[1];
输出:C(但我希望输出为 A)
显然,数组没有被“ = ”符号引用。
$c=$a; < 这应该复制 $a 并将其分配给 $c 。但是为什么这里会发生引用呢?
此外,如果我们简单地删除第二行($b=&$a[1];),或将其替换为($b=&$a;),它的行为与预期一样。
关于为什么会发生这种情况的任何解释?