Im Bereich der objektorientierten Programmierung spielt das Verständnis von Referenzen und der Umgang mit Objekten eine entscheidende Rolle. PHP, als beliebte Programmiersprache für Webentwicklung, ermöglicht es dir, die Konzepte der Objektorientierung effektiv zu nutzen. In diesem Text erfährst du, wie du Objekte erstellen und kopieren kannst – und warum das Klonen von Objekten wichtig ist.
Wichtigste Erkenntnisse
Das Duplizieren von Objekten in PHP erfolgt nicht durch simples Zuweisen von Variablen. Stattdessen wird eine Referenz kopiert, die auf dasselbe Objekt zeigt. Um tatsächlich eine neue Instanz eines Objekts zu erzeugen, musst du das Schlüsselwort clone verwenden.
Schritt-für-Schritt-Anleitung
Um das Klonen von Objekten in PHP zu verstehen und anzuwenden, folge diesen Schritten:
Schritt 1: Erstellen einer Klasse
Zuerst musst du eine Klasse erstellen, die als Vorlage für dein Objekt dient. Dies kann eine einfache Klasse mit einem oder mehreren Attributen sein.

Schritt 2: Instanziierung von Objekten
Erzeuge ein Objekt basierend auf der definierten Klasse. Hierbei erhält das Objekt einige Eigenschaften. Setze beispielsweise den Namen des Objekts auf "Jan".
Schritt 3: Kopieren eines Objekts
Hierbei wird jedoch nur die Referenz von $user1 an $user2 übergeben. Das bedeutet, dass beide Variablen auf dasselbe Objekt verweisen. Wenn du nun den Namen von $user2 änderst, wird auch der Name von $user1 geändert.
Schritt 4: Überprüfen der Werte
Um zu überprüfen, dass beide Variablen auf dasselbe Objekt zeigen, kannst du die Eigenschaften in der Ausgabe eines Browsers überprüfen. Ändere den Namen in einer der Variablen und sieh dir an, was passiert.

Schritt 5: Klonen von Objekten
Falls du ein unabhängiges Objekt basierend auf einem bestehenden Objekt erstellen möchtest, verwendest du das Schlüsselwort clone.
Hier ist $user2 nun eine neue Instanz mit eigenen Werten, unabhängig von $user1.
Schritt 6: Ergebnisse überprüfen
Lade die Seite erneut, um festzustellen, dass $user1 unverändert bleibt, während $user2 die neuen zugewiesenen Werte hat. Dies zeigt, dass die beiden Klassen-Instanzen nun unabhängig sind.
Zusammenfassung - Objektorientierte Web-Programmierung: Objekte klonen
Das Klonen von Objekten in PHP ist ein wesentlicher Bestandteil der objektorientierten Programmierung. Es ermöglicht dir, Datenstrukturen zu duplizieren, ohne die Originalinstanz zu beeinflussen. Die Verwendung des clone-Keywords stellt sicher, dass du eine neue Instanz des Objekts erhältst.
Häufig gestellte Fragen
Wie kopiere ich ein Objekt in PHP?Du verwendest das Schlüsselwort clone, um eine echte Kopie eines Objekts zu schaffen.
Was passiert, wenn ich ein Objekt einfach zuweise?Es wird eine Referenz auf das ursprüngliche Objekt erstellt, nicht eine Kopie.
Kann ich das clone-Keyword anpassen?Ja, du kannst die __clone()-Methode in deiner Klasse implementieren, um das Klonen anzupassen.
Wie wirkt sich das Klonen auf die Leistung aus?Das Klonen verbraucht mehr Speicher und kann die Leistung beeinträchtigen, wenn viele Objekte geklont werden.