3

可能重复:
用 & 符号启动 PHP 函数是什么意思?

最近我偶然发现了这段代码:

public static function &get_instance()
{
return self::$instance;
}

这种函数声明&get_instance()是什么意思?函数名可以是变量吗?

4

2 回答 2

4

它是单例模式的一部分,在旧式代码中。

Singleton 是一种用于确保类只有一个实例的模式。(从技术上讲,它可以用来确保任何类都有一定数量的实例,但这个数量几乎总是一个。)它是四人帮模式之一,你可以找到关于它的使用和滥用的无休止的讨论。通过网络。

于 2012-06-08T19:54:13.873 回答
2

这意味着get_instance()通过引用返回的结果。由于自 PHP 5 以来对象总是通过引用,因此编写这样的代码不再有意义。顺便说一句,这public也特别令人好奇,因为这意味着这是 PHP 5 代码。

于 2012-06-08T19:58:18.650 回答