Magische Methoden in PHP

Auf dieser Seite findest du eine Liste der magischen Methoden die in PHP zur Verfügung stehen. Diese Seite dient als Referenz für später denn um alle magischen Methoden zu verstehen musst du noch mehr über die Konzepte der OOP lernen.

Eine genauere Erklärung zu den einzelnen magischen Methoden findest du weiter unten:

__construct()
Wird direkt nach erzeugen des Objekts aufgerufen

__destruct()
Der Destruktor ist quasi das Gegenteil des Konstruktors. Dieser wird aufgerufen wenn das Objekt explizit zerstört wird oder alle Referenzen zum Objekt entfernt werden

__call()
Mittels __call() kann ein Objekt Methoden aufrufen, die in der Klasse selbst nicht angelegt wurden

__callStatic()
Diese Methode funktioniert ähnlich wie _call mit dem Unterschied, dass damit statische Methoden, die nicht deklariert wurden, aufgerufen werden können.

__set()
Mittels __set() kann ein Objekt Eigenschaften (Variablen) erhalten, die in der Klasse nicht vorher definiert wurden.

__get()
Eigenschaften die mittels __set() deklariert wurden, können mittels __get() abgerufen/ausgegeben werden.

__isset()
Mittels __isset() kann man prüfen, ob eine Eigenschaft existiert. So kann man prüfen ob mittels __set() eine Eigenschaft deklariert wurde.

__unset()
Diese Methode ist das Gegenstück zu __set(). Vorher deklarierte Eigenschaften können mittels __unset() gelöscht werden.

__sleep()
Wird aufgerufen wenn ein Objekt mittels serialize(), in eine Zeichenkette (String) umgewandelt wird

__wakeup()
Wird aufgerufen wenn ein String mittels unserialize() zurück in ein Objekt verwandelt wird.

__toString()
Wenn ein Objekt mittels serialize() in einen String umgewandelt wird, bestimmt diese Methode wie sie darauf reagiert.

__invoke()
Die __invoke()-Methode wird aufgerufen, wenn ein Skript versucht, ein Objekt als Funktion aufzurufen.

__set_state()
Dies ist eine statische Methode die aufgerufen wird, wenn ein Objekt mittels var_export() exportiert werden soll

__clone()
Objekte lassen sich mittels „clone“ klonen. Wenn in einer Klasse die __clone()-Methode definiert ist, wird diese nach dem klonen des Objekts aufgerufen.

__construct()

Möchte man nach der Instanziierung eines Objekts Variablen Werte zuweisen, eignet sich die magische Methode __construct dazu. Diese wird direkt nach erzeugen des Objekts aufgerufen und hilft dadurch bei der Objekt-Initialisierung.

__destruct()

In PHP ist es nicht nötig am Ende des Skripts für jedes Objekt die magische Methode __destruct() aufzurufen. PHP entfernt am Ende des Skripts automatisch alle Referenzen und „räumt“ dadurch auf. Der Destructor kann aber zum Beispiel dazu verwendet werden eine Datenbankverbindung explizit zu schließen.

__call()

__callStatic()

__set()

__get()

__isset()

__unset()

__sleep()

__wakeup()

__toString()

__invoke()

__set_state()

__clone()

– Liste alle magische Methoden von PHP auf
– gib jeweils eine kurze Erklärung dazu ab
– verlinke auf das Kapitel in dem es behandelt wird

hier geht's weiter...



Feedback Formular