In PHP5, l'overloading è gestito mediante un metodo speciale denominato __get($nomevar) e questo codice funziona
- Codice: Seleziona tutto
class delegato
{ var $num=5; }
class test
{
var $pippo;
function test()
{ $pippo=new delegato(); }
function __get($n)
{ $this->pippo->num; }
}
$dai=new test();
echo "Il valore è:". $dai->num;
In PHP4 invece __get() non viene invocato, e quindi l'echo mostra bianco. : per semplicità ho adattato il mio codice con una var $num locale, aggiornata alla bisogna.....ma, per curiosità, come diavolo si fanno i delegate in PHP4?