347 of 410 menu

Mbinu ya __clone

Mbinu __clone huitwa moja kwa moja wakati wa kutumia kiendeshaji clone. Inaruhusu kufafanua mantiki maalum ya nakala ya kitu. Kwa default, PHP hufanya nakala ya juu ya sifa zote za kitu. Mbinu __clone ni muhimu wakati inahitajika kutekeleza nakala ya kina au kubadilisha tabia wakati wa uigaji.

Syntax

public function __clone(): void

Mfano

Tutekeleze uigaji wa msingi wa kitu:

<?php class User { public $name; public function __construct($name) { $this->name = $name; } public function __clone() { echo 'Kitu kimeigwa'; } } $user1 = new User('John'); $user2 = clone $user1; ?>

Matokeo ya utekelezaji wa kificho:

'Kitu kimeigwa'

Mfano

Tutekeleze nakala ya kina ya kitu na vitu vilivyomo:

<?php class Address { public $city; public function __construct($city) { $this->city = $city; } } class User { public $name; public $address; public function __construct($name, $city) { $this->name = $name; $this->address = new Address($city); } public function __clone() { $this->address = clone $this->address; } } $user1 = new User('John', 'New York'); $user2 = clone $user1; $user2->address->city = 'Boston'; echo $user1->address->city; ?>

Matokeo ya utekelezaji wa kificho:

'New York'

Mfano

Tuongeze kitambulisho cha kipekee wakati wa uigaji:

<?php class Product { public $id; public $name; public function __construct($name) { $this->id = uniqid(); $this->name = $name; } public function __clone() { $this->id = uniqid(); } } $product1 = new Product('Laptop'); $product2 = clone $product1; echo $product1->id . ' ' . $product2->id; ?>

Matokeo ya utekelezaji wa kificho (mfano):

'5f1a2b3c 5f1a2b3d'

Tazama pia

Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa