Object Cloning

Dalam OOP PHP, ada kalanya kita membutuhkan duplikat/salinan object. Akan tetapi data object seringkali berubah-ubah. Sehingga saat data pada object yang diduplikat/disalin berubah, data pada objek salinan juga ikut berubah.

Lalu bagaimana jika kita membutuhkan object yang sama tetapi mempunyai nilai properti yang berbeda?. Untuk itu, PHP menyediakan fitur Object Clone. Dengan meng-Clone object, kita bisa mempunyai salinan object yang nilai propertinya tetap meskipun nilai properti pada object asli diubah.

Berikut ini contoh implementasi object cloning pada PHP:

Pada contoh di atas saya menginstansiasi class Tabungan menjadi objek dengan nama $rekeningA, lalu mendefinisikan $rekeningB = $rekeningA dan meng-clone $rekeningA sebagai $rekeningC. setelah dijalankan, pada browser muncul output sebagai berikut:



Saldo rekening A = 450000
Saldo rekening B = 450000
Saldo rekening C = 125000



Hasil output rekening A dan rekening B sama, yaitu nilai saldo yang dihitung setelah nilai properti dari $rekeningA saldo ($this->saldo) dan debit ($rekeningA->debit). Sedangkan saldo rekening C merupakan hasil penghitungan saldo dari nilai properti $rekeningA sebelum diubah. Artinya properti $rekeningC tidak berubah meskipun properti milik $rekeningA (sebagai object yang diduplikasi/clone) telah diubah.

Komentar

Postingan Populer