你为什么要这样做?
$a = &new <someclass>();
Run Code Online (Sandbox Code Playgroud)
例如,SimpleTest的SimpleBrowser文档使用此语法(http://www.simpletest.org/en/browser_documentation.html).
$browser = &new SimpleBrowser();
Run Code Online (Sandbox Code Playgroud)
对此有用吗?这是PHP 4的遗物吗?
编辑:
我理解&符号通过引用返回,但是通过引用返回对象的新实例有什么意义呢?
在 PHP5 中,对象是使用不透明对象句柄传递的。您仍然可以引用持有此类句柄的变量并为其赋予另一个值;这就是&newPHP5 中该构造的作用。尽管 \xe2\x80\x93 似乎并不是特别有用,除非您显式克隆它,否则只有一个特定对象实例的副本,并且您可以在实例化后随时引用它的句柄,如果你想要。&new所以我的猜测是,您发现的代码是必要模式时的延续。