欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php对象克隆的实现方法

程序员文章站 2022-03-28 16:04:58
...
有的时候我们需要在一个项目里面,使用两个或多个一样的对象,如果你使用“new” 关键字重新创建对象的话,再赋值上相同的属性,这样做比较烦琐而且也容易出错,所以要 根据一个对象完全克隆出一个一模一样的对象,是非常有必要的,而且克隆以后,两个对象 互不干扰。 本文主要和大家分享php对象克隆的实现方法,希望能帮助到大家。
<?php 
  //定义类staff,其中包括属性id和name 
  class staff  
  { 
   private $id; 
   private $name; 
   function setID($id)  
   { 
     $this->id = $id; 
   } 
   function getID()  
   { 
     return $this->id; 
   } 
   function setName($name)  
   { 
     $this->name = $name; 
   } 
   function getName()  
   { 
     return $this->name; 
   } 
  } 
  //创建一个新的staff对象并初始化 
  $ee1 = new staff(); 
  $ee1->setID("145"); 
  $ee1->setName("Simon"); 
  //克隆一个新的对象 
  $ee2 = clone $ee1; 
  //重新设置新对象的ID值 
  $ee2->setID("146"); 
  //输出ee1和ee2 
  echo "ee1 ID: ".$ee1->getID()."<br data-filtered="filtered">"; 
  echo "ee1 Name: ".$ee1->getName()."<br data-filtered="filtered">"; 
  echo "ee2 ID: ".$ee2->getID()."<br data-filtered="filtered">"; 
  echo "ee2 Name: ".$ee2->getName()."<br data-filtered="filtered">"; 
?>

<?php 
  //定义类staff,其中包括属性id和name 
  class staff  
  { 
   private $id; 
   private $name; 
   function setID($id)  
   { 
     $this->id = $id; 
   } 
   function getID()  
   { 
     return $this->id; 
   } 
   function setName($name)  
   { 
     $this->name = $name; 
   } 
   function getName()  
   { 
     return $this->name; 
   } 
   //这里是__clone函数 
   function __clone() 
   { 
    $this->id = $this->id + 1; 
   } 
  } 
  //创建一个新的staff对象并初始化 
  $ee1 = new staff(); 
  $ee1->setID("145"); 
  $ee1->setName("Simon"); 
  //克隆一个新的对象 
  $ee2 = clone $ee1; 
  //重新设置新对象的ID值 
  //$ee2->setID("146"); 
  //输出ee1和ee2 
  echo "ee1 ID: ".$ee1->getID()."<br>"; 
  echo "ee1 Name: ".$ee1->getName()."<br>"; 
  echo "ee2 ID: ".$ee2->getID()."<br>"; 
  echo "ee2 Name: ".$ee2->getName()."<br>"; 
?>

相关推荐:

php克隆对象是什么?它是如何实现的?

php克隆对象clone的使用方法

php实现对象克隆的方法,php对象克隆_PHP教程

以上就是php对象克隆的实现方法的详细内容,更多请关注其它相关文章!

相关标签: php 方法 实现