PHP 手册
后退 | 章 21. 引用的解释 | 前进

# 引用返回

引用返回用在当想用函数找到引用应该被绑定在哪一个变量上面时。不要用返回引用来增加性能，引擎足够聪明来自己进行优化。仅在有合理的技术原因时才返回引用！要返回引用，使用此语法：

`<?php function &find_var($param) { /* ...code... */ return $found_var; } $foo =& find_var($bar); $foo->x = 2; ?>`

本例中 find_var 函数所返回的对象的属性将被赋值，而不是拷贝，就和没有用引用语法一样。

> 注: 和参数传递不同，这里必须在两个地方都用 & 符号――指出返回的是一个引用，而不是通常的一个拷贝，同样也指出 $foo 是作为引用的绑定，而不是通常的赋值。

> 注: 如果试图这样从函数返回引用：return ($found_var);，这将不会起作用，因为在试图返回一个表达式的结果而不是一个引用的变量。只能从函数返回引用变量――没别的方法。如果代码试图返回一个动态表达式或 new 运算符的结果，自 PHP 4.4.0 和 PHP 5.1.0 起会发出一条 `E_NOTICE` 错误。

后退 | 起点 | 前进
引用传递 | 上一级 | 取消引用