milky: Objekt zur Laufzeit um Funktion erweitern

Beitrag lesen

Hey,

dein eigentliches Problem scheint eher ADODB zu sein und nicht PHP.

[...] Gibt es in PHP die Möglichkeit ein bestehendes Objekt zur Laufzeit um eine Funktion zu erweitern?

Normalerweise wäre hier das Stichwort "typecasting", aber mit Objekten
klappt das in PHP nicht besonders (= nicht erlaubt), man kann bestenfalls
Objekte in Arrays eintauschen.

[...] bei jedem aufruf der funktion execute (diese übergibt den sql-query an die DB) soll zusätzlich noch eine von uns spezifizierte Funktion aufgerufen werden. Ableiten von den ADODB-Klassen ist nicht möglich [...]

An der Stelle wär's sicher das einfachste, ein wenig in ADODB
herumzueditieren. Andernfalls kannst du nur noch eine wrapper-Funktion
einsetzen, der das ADODB-Objekt übergeben wird und die dann automatisch
deine zusätzliche Funktion ausführt (nachdem $obj->execute aufgerufen
wurde).

function bonus_execute(&$obj, $sql, $param1) {
      $r = $obj->execute($obj, $param1);
      zusatz_fkt($obj, $r);
      return($r);
   }

MsF,
milky