If you're stuck with a particular version of PHP (i.e., on a shared server), then there is good cause to revert your local development version.
However, even in 5.2, using a reference to instantiate a class was not proper procedure - it just threw a notice, rather than a warning (which probably never made it to your screen). I can't find anything to indicate that it was ever used in any 5.x version; the only mentions I've found seem to place it in version 4, when OO programming was just being introduced to PHP (and not very well, to be blunt).
all in all, it just doesn't make any sense: the reference operator means you intend to work with the same contents as that which you're referencing. for example:
PHP Code:
$myvar = 'value';
$urvar = $myvar;
$myref =& $myvar;
print $myvar."\n".$urvar."\n".$myref;
// prints:
// value
// value
// value
$myref = 'other value';
print $myvar."\n".$urvar."\n".$myref;
// prints:
// other value
// value
// other value
in this example, $myvar and $myref literally share the same value (not identical values, but actually two names for one box, as it were), whereas the value of $urvar is simply identical to $myvar (at the time it was assigned: it's a "copy").
doing this when creating a new class instance is pointless because there is no existing value to reference: as the keyword implies, the class instance is "new."
As I said, I'm just discovering this issue, so I may not have a complete grasp of it, so I'm sorry if something I'm going on about isn't quite right.
</tangent>
In any case, it seems the problem you actually had is solved.
Bookmarks