PHP 手冊
上一頁 | 章 15.References Explained | 下一頁

# What References Do

PHP references allow you to make two variables to refer to the same content. Meaning, when you do:

`$a =& $b`

it means that $a and $b point to the same variable.

> 備注: $a and $b are completely equal here, that's not $a is pointing to $b or vice versa, that's $a and $b pointing to the same place.

The same syntax can be used with functions, that return references, and with new operator (in PHP 4.0.4 and later):

`$bar =& new fooclass(); $foo =& find_var ($bar);`

> 備注: Unless you use the syntax above, the result of $bar = new fooclass() will not be the same variable as $this in the constructor, meaning that if you have used reference to $this in the constructor, you should use reference assignment, or you get two different objects.

The second thing references do is to pass variables by-reference. This is done by making a local variable in a function and a variable in the calling scope reference to the same content. Example:

`function foo (&$var) { $var++; } $a=5; foo ($a);`

will make $a to be 6. This happens because in the function foo the variable $var refers to the same content as $a. See also more detailed explanations about passing by reference.

The third thing reference can do is return by reference.

上一頁 | 最開頭 | 下一頁
References Explained | 上一層 | What References Are Not