klasse in klasse nutzen?

südpol

Erfahrenes Mitglied
Hi,

ist vermutlich ne blöde Frage. Habs auch schon mit suchen versucht bzw. mit try and error - bin aber beim error geblieben :D.

Daher die Frage an die Profis. Ich habe eine dbaccess klasse um auf meine db zugreifen zu können. Nach meinem Verständnis müsste es ohne weiteres möglich sein diese Klasse in einer weitern Klasse zu nutzen also z. B. so:

PHP:
class testclass {
  var $dbconnect;
  function testclass() {
    $this->dbconnect = NEW DBAccess;
  }
  functin test1() {
    $this->dbconnect->executeQuery("begin");
    $this->dbconnect->executeQuery("SELECT * FROM x");
    $this->dbconnect->executeQuery("commit");
  }
}

Habe ich da einen Denkfehler drin oder muss ich die Klassen zwangsweise mit extend "verbinden"?

Danke
 
Hi,

das sollte auf jeden Fall gehen... vielleicht solltest du die DB-Klasse mal überprüfen. Es kann sein, dass der Konstruktor einige Variablen benötigt...
 
Versuch mal das:
PHP:
class testclass extends DBAccess {

  function testclass () {
    $this->DBAccess();
  }

  function test1() {
    $this->executeQuery("begin");
    $this->executeQuery("SELECT * FROM x");
    $this->executeQuery("commit");
  }
}

// Edit: Habe die Problematik einmal mit 2 Testklassen nachvollzogen. Es sollte wirklich auch so funktionieren.

snuu
 
Zuletzt bearbeitet:
Hi danke für die schnellen Tipps!

also wenn ich die Klasse über extends mit rein nehme gehts ohne Probleme. Mal davon abgesehen, dass ich tatsächlich Probleme mit dem Konstruktor hatte. *grml* immer diese Denkfehler...

Versuche ich die Klasse jedoch in der Klasse zu instanzieren läuft das Teil einfach nicht - und ich war mich fast 90 %ig sicher, dass ich das schon mal genau so in einem Projekt gemacht habe.

Danke & gute Nacht!
 
Zurück