Ciao a tutti,
ho una classe e avrei bisogno di chiamare un metodo di cui non so il nome a priori. Io avrei fatto cosi:
Cosi' non funziona. Ho provato a utilizzare call_user_func(), ma chiama solo metodi statici e dunque, se $azione vale "printTitle", quando arriva a $this mi si blocca e dice che non posso usare $this in un contesto non statico.codice:Class pippo { private $title; function pippo($azione = null) { $title = "prova titolo"; if ($azione != null) eseguiAzione($azione); } public function eseguiAzione($azione) { /* Questa e' la fonte del problema: */ $this->{$azione}; } public function printTitle() { print($this->title); } }
E' l'ennesima merdata di PHP o posso sperare di fare qualcosa del genere? Se non posso fare questa cosa stupidissima, ho appena buttato via 2 settimane di lavoro, quindi vi prego di aiutarmi a trovare una soluzione.
Per inciso, il codice sopra e' solo esemplificativo, non ha alcun utilizzo pratico se non quello di spiegare il problema.