|
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
MaGdev Site Admin

Anmeldungsdatum: 04.02.2004 Beiträge: 715 Wohnort: Hamburg
|
02.03.2006 15:00 Cache_Function und $this |
|
|
Hallo Leute,
ich hab da ein Problem mit Cache_Function.
Innerhalb eines Objekts möchte ich gerne den Aufruf einer Methode des gleichen Objekts cachen.
Im Sinne von:
| PHP: | <?php $ret = $this->_cache->call('this->_query', $params, $search); |
Wenn ich das so mache, bekomme ich keine Ausgabe
[vermutung]
Ein Blick in den Quellcode verrät, das in Cache_Function das intern über eine dynamische Variable löst.
| PHP: | <?php list($object, $method) = explode('->', $target);
global $$object;
$result = call_user_func_array(array($$object, $method), $arguments); |
Wenn so nun obige Aufruf durchgeführt wird, wird die dynamische Variable $$object zu $this. Der anschliessende Aufruf von call_user_func_array() würde also in etwa so lauten:
| PHP: | <?php $result = call_user_func_array(array($this, $method), $arguments); |
$this würde dann aber auf die Klasse selbst (Cache_Function) verweisen und nicht auf die aufrufende Instanz der ursprünglichen Klasse.
Fazit: Der Aufruf geht so nicht!
[/vermutung]
Liege ich mit der Vermutung richtig?
Und falls ja, wie kann ich das Problem sinnvoll umgehen?
Hat irgend jemand einen Tip?
Vielen Dank,
Marco _________________ Auch der längste Weg beginnt immer mit einem kleinem Schritt!
Vorgehen bei Problemen:
1. PHP-Handbuch oder PEAR-Handbuch lesen!
2. Forensuche benutzen!
3. Fragen posten und dabei die Regeln beachten! |
|
| Nach oben |
|
 |
|
|
|
Zu Deinen Favoriten hinzufügen
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum herunterladen
|
|