发布日期:2013-02-20 09:52 来源:佚名 标签: 对象 克隆
 

<?php

  class mypc
 {
  public $name="我的类";
  function __clone()
  {
  $this->name="你的类";
  }
 }
 $p=new mypc();
 $b=clone $p;
 echo $b->name;

?>

输出了你的类

这样理解就是  执行$b=clone $p就会调用   function __clone()  这个函数了

<?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>";  
   echo "ee1 Name: ".$ee1->getName()."<br>";  
   echo "ee2 ID: ".$ee2->getID()."<br>";  
   echo "ee2 Name: ".$ee2->getName()."<br>";  
?> 

<?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是目前最热门的Web开发语言,它简单高效、开源免费、跨平台等特性受到广大Web开发人员的欢迎,从1994年诞生至今已被2000多万个网站采用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。本教程从PHP是什么,PHP环境搭建,PHP基础知识,PHP文件,PHP数据库,PHP实例等知识点了解PHP这门语言。