Computer >> Máy Tính >  >> Lập trình >> PHP

Làm thế nào để tạo một bản sao của một đối tượng trong PHP?


Để tạo bản sao của một đối tượng trong PHP, mã như sau−

Ví dụ

<?php
   class Demo {
      public $val1;
      public $val2;
   }
   $ob = new Demo();
   $copyOb = clone $ob;
   $ob->val1 = "Jack";
   $ob->val2 = "Kevin";
   $copyOb->val1 = "Tom";
   $copyOb->val2 = "Ryan ";
   echo "$ob->val1$ob->val2\n";
   echo "$copyOb->val1$copyOb->val2\n";
?>

Đầu ra

Điều này sẽ tạo ra kết quả sau−

JackKevin
TomRyan

Ví dụ

Bây giờ chúng ta hãy xem một ví dụ khác -

<?php
   class Demo {
      public $deptname;
      public $deptzone;
      public function __construct($a, $b) {
         $this->deptname = $a;
         $this->deptzone = $b;
      }
   }
   $val = new Demo('Finance', 'West');
   $copy = clone $val;
   print_r($val);
   print_r($copy);
?>

Đầu ra

Điều này sẽ tạo ra kết quả sau−

Demo Object(
   [deptname] => Finance
   [deptzone] => West
)
Demo Object(
   [deptname] => Finance
   [deptzone] => West
)