ora, a prescindere dall'utilità ... qualcuno sa dirmi perchè sto diamine di PHP 5 non riesce a seguire un filo logico che è uno?
Codice PHP:
<?php
class DynamicFunction {
    private 
$callback;
    function 
__construct(){
        
$this->callback create_function('''return "Hello World!";');
    }
    function 
__toString(){
        return 
''.$this->callback;
    }
}

$f = new DynamicFunction();
$s ''.$f;
echo 
$s(); // Hello World!
echo $f(); // Fatal Error ... 
?>
ogni consiglio sul come emulare il comportamento senza errori è bene accetto (considerando che ovviamente il call_user_func(_array)? sull'istanza ovviamente va ma non è quello che cerco)

Il succo è questo:
perchè se assegno ad una variabile il nome di una funzione posso usarla "come per magia" stile shortcut di funzione mentre se esplicito un __toString per avere un nome funzione questo non è il reale valore letto/usato dal parser?


Codice PHP:
// pure questo funziona, nonostante il notice
$s str_replace;
echo 
$s('a''z''abc');