2011-07-21 12 views

Odpowiedz

0

Z $obj->foo() wywołać metody, ale chcesz zadzwonić właściwość jak funkcja/metoda. To tylko myli parser, ponieważ nie znalazł metody o nazwie foo(), ale nie może oczekiwać, że jakaś własność będzie czymś, co można wywołać.

call_user_func($tokenMapper->tokenJoinHistories, $a); 

Lub rozszerzyć swoją odwzorowujący jak

class Bar { 
    public function __call ($name, $args) { 
    if (isset($this->$name) && is_callable($this->$name)) { 
     return call_user_func_array($this->$name, $args); 
    } else { 
     throw new Exception("Undefined method '$name'"); 
    } 
    } 
} 

(prawdopodobnie istnieją pewne problemy w tym szybko pisemnej przykład)

2

PHP próbuje dopasować metodę instancji o nazwie „tokenJoinHistories”, które nie jest zdefiniowane w oryginalnej klasie

Musisz zamiast tego wykonać:

$anon_func = $tokenMapper->tokenJoinHistories; 
$anon_func($a); 

Przeczytaj dokumentację here, szczególnie część komentarza.

Powiązane problemy