allo,
ich habe in einem Array Instanzen von selbst definierten Klassen gespeichert, z.B.:
$items = array();
$items[] = new MeineKlasse();
Nun hat die Klasse MeineKlasse z.B. eine Funktion meineFunktion(). Wenn ich diese Funktion folgendermaßen aufrufe:
$items[0]->meineFunktion();
bekomme ich folgende Fehlermeldung:
Call to a member function on a non-object
Liegt wahrscheinlich daran, dass PHP4 nicht weiß, dass es eben ein instanziertes Objekt von MeineKlasse ist. In Java würde ich jetzt einen Cast machen, etwa so:
$aitem = (MeineKlasse)$items[0];
$aitem->meineFunktion();
Das geht aber offenbar in PHP4 nicht. Ich habe zwar einen object-Cast gefunden:
$aitem = (object)$items[0];
$aitem->meineFunktion();
aber der liefert:
Call to undefined function: meineFunktion()
Wie gehe ich da richtig ran?
Danke und Gruß
Ulrich
ich habe in einem Array Instanzen von selbst definierten Klassen gespeichert, z.B.:
$items = array();
$items[] = new MeineKlasse();
Nun hat die Klasse MeineKlasse z.B. eine Funktion meineFunktion(). Wenn ich diese Funktion folgendermaßen aufrufe:
$items[0]->meineFunktion();
bekomme ich folgende Fehlermeldung:
Call to a member function on a non-object
Liegt wahrscheinlich daran, dass PHP4 nicht weiß, dass es eben ein instanziertes Objekt von MeineKlasse ist. In Java würde ich jetzt einen Cast machen, etwa so:
$aitem = (MeineKlasse)$items[0];
$aitem->meineFunktion();
Das geht aber offenbar in PHP4 nicht. Ich habe zwar einen object-Cast gefunden:
$aitem = (object)$items[0];
$aitem->meineFunktion();
aber der liefert:
Call to undefined function: meineFunktion()
Wie gehe ich da richtig ran?
Danke und Gruß
Ulrich
Kommentar