php中的变量引用

时间:2012-09-11 06:31:21

标签: php reference

此PHP代码的输出为33

$b=2;
$a=&$b;
$a=3;
print $a;
print $b;

$b如何成为3?

5 个答案:

答案 0 :(得分:4)

由于$a指向$b内存位置。

现在,如果您更改$a的值,它将实际更新$b值(存储$b的位置)。因为两者都指向相同的内存位置。

或者您可以说$a$b是访问相同内存位置的两种不同方式,因为您已将$b的引用分配给$a

答案 1 :(得分:3)

References in php

从上图中可以看出,当您将变量的引用分配给另一个变量时,它们都指向相同的位置,因此一个变量反映到另一个变量。
感谢

答案 2 :(得分:1)

您正在将$ b的地址存储到$ a中,然后更改$ a,以便$ b的地址中的值发生变化,因此$ b也发生了变化

答案 3 :(得分:1)

一旦您引用$a$b是同一个变量的两个名称。

另请参阅:http://php.net/manual/en/language.references.php(特别是列表中的第一篇文章)

答案 4 :(得分:1)

$a=&$b;这句话就像是说“从现在起$ b,你也是$ a。”

print $a; // prints 3
print $b; // prints another 3