Originariamente inviato da ciro78
questa non va bene. in quel caso dovrei stare a riscrivere tutte le funzioni che devo richiamare. invece il metodo call prende automaticamente il nome della function. resta solo il problema degli argomenti
la cosa che non capisco è: se la funzione esiste, __call non verrà mai richiamato. Cioè:
Codice PHP:
class Foo{
function __call($method,$args){ echo "chiamato __call"; }
function test($mioarg){ echo "chiamato test"; }
}
$foo = new Foo();
$foo->test("hello"); //print "chiamato test";
call potrebbe essere utile per fare cose del tipo:
Codice PHP:
class Foo{
function test($arg){ echo "called test $arg"; }
function __call($method,$args){
$arg = array_shift($args);
$this->test($arg);
}
}
$foo = new Foo();
$foo->testBar();