php实现对象克隆的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了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>"; 
  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程序设计有所帮助。

相关文章

Zend Studio (eclipse)使用速度优化方法

原文标题是优化 myeclipse7.0 速度(尤其是building workspace),都是eclipse设置一样的。 大家一定对buileding workspace时那缓慢的速...

浅析PHP页面局部刷新功能的实现小结

方法其实挺多的。以前比较常用的是iframe这样来做。现在多了个ajax,所以一般情况下都是用的ajax。第一种方法,ajax实现:当然,ajax使用起来确实很简单就可以实现,但是里面的...

CentOS系统中PHP安装扩展的方式汇总

CentOS系统中PHP安装扩展的方式汇总

CentOS 下,PHP有多种方式来安装扩展, 主要有 包管理式 的 yum 安装 、 pecl 安装 , 以及 源码编译安装 。 包管理式 的安装卸载尤为方便,而 源码编译式 的安装则...

php提示无法加载或mcrypt没有找到 PHP 扩展 mbstring解决办法

没有找到 PHP 扩展 mbstring,而您现在好像在使用多字节字符集。没有 mbstring 扩展的 phpMyAdmin 不能正确分割字符串,可能产生意想不到的结果。 无法加载mc...

PHP一致性hash分布式算法封装类定义与用法示例

本文实例讲述了PHP一致性hash分布式算法封装类定义与用法。分享给大家供大家参考,具体如下: 一、无虚拟节点实现 <?php /** * 一致性hash分布式算法...