当前位置:首页 > PHP教程 > php面向对象 > 列表

php实现对象克隆的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-06-02 09:43:00 浏览: 评论:0 

这篇文章主要介绍了php实现对象克隆的方法,实例分析了php对象实例化与克隆的使用技巧,需要的朋友可以参考下,本文实例讲述了php实现对象克隆的方法。分享给大家供大家参考,具体如下:

  1. <?php  
  2.   //定义类staff,其中包括属性id和name  
  3.   class staff   
  4.   {  
  5.    private $id;  
  6.    private $name;  
  7.    function setID($id)   
  8.    {  
  9.      $this->id = $id;  
  10.    }  
  11.    function getID()   
  12.    {  
  13.      return $this->id;  
  14.    }  
  15.    function setName($name)   
  16.    {  
  17.      $this->name = $name;  
  18.    }  
  19.    function getName()   
  20.    {  
  21.      return $this->name;  
  22.    }  
  23.   }  
  24.   //创建一个新的staff对象并初始化  
  25.   $ee1 = new staff();  
  26.   $ee1->setID("145");  
  27.   $ee1->setName("Simon");  
  28.   //克隆一个新的对象  
  29.   $ee2 = clone $ee1;  
  30.   //重新设置新对象的ID值  
  31.   $ee2->setID("146");  
  32.   //输出ee1和ee2  
  33.   echo "ee1 ID: ".$ee1->getID()."<br>";  
  34.   echo "ee1 Name: ".$ee1->getName()."<br>";  
  35.   echo "ee2 ID: ".$ee2->getID()."<br>";  
  36.   echo "ee2 Name: ".$ee2->getName()."<br>";  
  37. ?>  
  38.  
  39. <?php  
  40.   //定义类staff,其中包括属性id和name  
  41.   class staff   
  42.   {  
  43.    private $id;  
  44.    private $name;  
  45.    function setID($id)   
  46.    {  
  47.      $this->id = $id;  
  48.    }  
  49.    function getID()   
  50.    {  
  51.      return $this->id;  
  52.    }  
  53.    function setName($name)   
  54.    {  
  55.      $this->name = $name;  
  56.    }  
  57.    function getName()   
  58.    {  
  59.      return $this->name;  
  60.    }  
  61.    //这里是__clone函数  
  62.    function __clone()  
  63.    {  
  64.     $this->id = $this->id + 1;  
  65.    }  
  66.   }  
  67.   //创建一个新的staff对象并初始化  
  68.   $ee1 = new staff();  
  69.   $ee1->setID("145");  
  70.   $ee1->setName("Simon");  
  71.   //克隆一个新的对象  
  72.   $ee2 = clone $ee1;  
  73.   //重新设置新对象的ID值  
  74.   //$ee2->setID("146");  
  75.   //输出ee1和ee2  
  76.   echo "ee1 ID: ".$ee1->getID()."<br>";  
  77.   echo "ee1 Name: ".$ee1->getName()."<br>";  
  78.   echo "ee2 ID: ".$ee2->getID()."<br>";  
  79.   echo "ee2 Name: ".$ee2->getName()."<br>";  
  80. ?>

Tags: php对象克隆

分享到: