clone

PHP clone kalit so‘zi

❮ PHP kalit so‘zlar ma’lumotnomasi

Misol

Obyektning nusxasini yarating:

<?php class MyClass {   public $color;   public $amount; } $obj = new MyClass(); $obj->color = "red"; $obj->amount = 5; $copy = clone $obj; print_r($copy); ?>
O‘zingiz sinab ko‘ring »

ULASHISH

Ta’rif va qo‘llanilishi

clone kalit so‘zi obyektning nusxasini yaratish uchun ishlatiladi.

Agar xususiyatlardan birortasi boshqa o‘zgaruvchi yoki obyektga havola bo‘lsa, faqat havolaning o‘zi nusxalanadi. Obyektlar har doim havola orqali uzatiladi, shuning uchun asl obyektning xususiyatlarida boshqa obyekt bo‘lsa, nusxa ham xuddi shu obyektga ishora qiladi. Bu xatti-harakatni classda __clone() metodini yaratish orqali o‘zgartirish mumkin.


Tegishli sahifalar

Classlar haqida PHP classlar va obyektlar darsligimizda batafsil o‘qing.


Ko‘proq misollar

Misol

Havolaga ega obyektning nusxasini yarating:

<?php class MyClass {   public $amount; } // Create an object with a reference $value = 5; $obj = new MyClass(); $obj->amount = &$value; // Clone the object $copy = clone $obj; // Change the value in the original object $obj->amount = 6; // The copy is changed print_r($copy); ?>
O‘zingiz sinab ko‘ring »

Misol

Nusxalangan obyektdagi havolalarni uzish uchun __clone() metodidan foydalaning:

<?php class MyClass {   public $amount;   public function __clone() {     $value = $this->amount;     unset($this->amount); // Unset breaks references     $this->amount = $value;   } } // Create an object with a reference $value = 5; $obj = new MyClass(); $obj->amount = &$value; // Clone the object $copy = clone $obj; // Change the value in the original object $obj->amount = 6; // The copy is not changed print_r($copy); ?>
O‘zingiz sinab ko‘ring »

❮ PHP kalit so‘zlar ma’lumotnomasi

W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!