So kopieren Sie PHP-Objekte

PHP bietet eine Methode, die Sie verwenden können, um ein Objekt zu kopieren. Das Verfahren ist __Klon, mit zwei Unterstrichen. Sie können Ihre eigenen schreiben __Klon wenn Methode in einer Klasse möchten Sie Anweisungen angeben, die ausgeführt werden, wenn das Objekt kopiert wird. Wenn Sie nicht über Ihre eigene schreiben, verwendet PHP seine Standard __Klon Methode, die kopiert alle Eigenschaften, wie ist.

Wie durch die zwei Unterstreichungen gezeigt seinen Namen Beginn wird der Klon Verfahren eine andere Art von Verfahren und damit anders genannt wird, wie im folgenden Beispiel gezeigt.

Sie könnten die folgende Klasse schreiben:

Klasse Auto {private $ Gas = 0-private $ color = "red" -Funktion addGas ($ Menge) {$ this-> Gas = $ this-> Gas + $ Menge-echo "$ Menge Gallonen Gastank gegeben" - } function __clone () {$ this-> Gas = 5-}}

diese Klasse verwenden, können Sie ein Objekt aus und kopieren Sie ihn, wie folgt zu erstellen:

$ FirstCar = new Car- $ firstCar-> addGas (10) - $ secondCar = clone $ firstCar-

Nach diesen Aussagen, haben Sie zwei Autos:

  • $ firstCar: Dieses Auto ist rot und enthält zehn Liter Benzin. Die 10 Gallonen wurden mit dem zusätzlichen addGas Verfahren.

  • $ secondCar: Dieses Auto ist rot, aber enthält fünf Liter Benzin. Das Duplikat Auto wird mit erstellt die __Klon Verfahren in der Auto Klasse. Diese Methode setzt Gas 5 und nicht gesetzt $ Farbe überhaupt.

Wenn Sie nicht über ein __Klon Verfahren in der Auto Klasse, würde PHP eine Standard verwenden __Klon Verfahren, die alle Eigenschaften kopieren würde, so dass $ secondCar beide rot und zehn Liter Benzin enthält.

Menü