PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : extends


Nakro
04.06.2002, 20:59
Hallioski!

So irgendwie bekomm ich das mit dem Befehl extends nicht hin. Ich hab zwei Klassen und ich möchte das eine dritte Klasse je nach Bedarf eine oder auch beide der anderen Klassen ausführt.
[list=1]
Kann ich irgendwie mit dem Befehl extends nur um eine Klasse erweitern und muss dann neue Klassen aufmachen als "Brücke" damit ich mehrere für eine Klasse verfügbar machen kann
Hab ich überhaupt keine Ahnung wie ich es hinkriegen soll das er nur dann z.B. die Klasse news um die Klasse adminfunctions extended wenn der Admin auch wirklich eingeloggt ist, also wie ich dafür überhaupt ne if abfrage in der Klasse machen soll.:eek:
[/list=1]
Ich hoffe mir kann einer helfen


Jan Krüger
05.06.2002, 14:13
erstmal...
extends erweitert nicht eine existierende Klasse mit der Funktionalität einer anderen, auch existierenden Klasse. Extends wird dazu benutzt, um in einer neu definierten Klasse die Methoden, die in einer anderen Klasse definiert worden sind, zu "erben". Man könnte also quasi eine Klasse AdminNews extends News herstellen, die ein paar neue Methoden zur Verwaltung definiert.

Was du meines Erachtens machen kannst, ist, per IF-Abfrage entweder eine Instanz von News oder NewsAdmin zu erzeugen, in etwa so:
if($isadmin) $newsclass = new News; else $newsclass = new NewsAdmin;

PS. ich glaube, für News und Newsadmin würde ich gar keine Klassen verwenden. ;)

Nakro
06.06.2002, 20:50
Danke, aber das Problem steckt woanders:

Ich möchte so etwas wie:

class news extends adminfunctions extends pagefunctions{
}

Iss jetzt nur ein Beispiel (Es geht ja nicht darum das man es normalerweise nicht so macht, das ich da jetzt news schreibe ist ja auch egal). Kann man so etwas nicht irgendwie hinbekommen?

Jan Krüger
07.06.2002, 00:56
wird derzeit noch nicht unterstützt. steht auch in der PHP-doku ;).

Nakro
09.06.2002, 21:35
is ja ganz toll, trotzdem danke :)