存储变量值的方法与存储变量地址(位置)的方式不同

时间:2010-03-10 07:33:22

标签: php

(赋值变量值)的语法是否与PHP中(赋值地址)的语法不同。

像: 如果我们想将变量值存储到另一个变量,那么我们可以这样做:

$b=2;
$a=$b;
print $a;
print $b;
// output is 22

但是如果我们想将变量地址存储到另一个变量,那么我们就可以这样做:

$b=2;
$a=&$b; // note the & operator
$a=3;
print $a;
print $b;
// output is 33

请注意,第一次$ b包含'2',然后是$ a =& $ b; $ b将包含'3',现在要认为如果我们想要存储变量值,那么我们将使用$a=$b;&如果我们想存储变量位置地址,那么我们将使用$a=&$b;

我的结论:

存储的方式如下:

$store_destination = $store_source;   // ie: value save from right to left.

地址存储的方式如下:

$store_source = $store_destination;   // ie: address save from left to right.
  

我是对的吗?

1 个答案:

答案 0 :(得分:2)

在PHP中,我们没有明确地讨论地址和指针,而是讨论一个名为references的概念。

在案例2中,您正在$b$a的引用,因此它们都引用相同的内容。任何改变都将改变另一个。