Why would you do this?
$a = &new <someclass>();
For example, the documentation for SimpleTest’s SimpleBrowser uses this syntax (http://www.simpletest.org/en/browser_documentation.html).
$browser = &new SimpleBrowser();
Is there any use to this? Is this a relic of PHP 4?
Edit:
I understand that the ampersand returns by reference, but what is the point of returning a NEW instance of an object by reference?
In PHP5, objects are passed using opaque object handles. You can still make a reference to a variable holding such a handle and give it another value; this is what the
&newconstruct does in PHP5. It doesn’t seem to be particularly useful though – unless you clone it explicitly, there’s only ever one copy of a particular object instance, and you can make references to handles to it anytime after instantiation if you want to. So my guess would be the code you found is a holdover from when&newwas a necessary pattern.