the code I posted is actually from user contributed notes on the manual at www.php.net
That's why I included the link.
Actually I'm not sure what function &value() does.
I have seen &new before, in the GTK-PHP stuff.
There's only one way to find out if it's necessary.
My guess is that it's necessary because you are not instantiating any objects, but you are returning values from them. Therefore it's necessary to keep the memory associated with the "non-existant" return values.
But I could be totally wrong.
PHP's OOP functionality is not very good.
I dont' think you can do it with a variable, which is why you have to use the set and get functions.