<?php
/*
 * WEB开发笔记 www.chhua.com 每日练习之PHP对象的克隆和__clone()方法的使用
 */
/*
 */
class Rmb{
 public $Num;
 public function __construct($rmbNum){
  $this->Num=$rmbNum;
 }
}
class classTest {
 public  $name;
 public $age;
 public $id;
 public $rmb;
 
 function __construct($name,$age,Rmb $rmb) {//Rmb 对象做为参数
  $this->age=$age;
  $this->name=$name;
  $this->rmb=$rmb;
 }
 
 function setId($id){
  $this->id=$id;
 }
 
 function __clone(){//当克隆对象的时候触发方法
  $this->id=0;
  $this->rmb=clone $this->rmb;//克隆对象中的属性做为新属性
 }
}

$user=new classTest(“www.chenhua.com”,”100″,new Rmb(200));

echo $user->rmb->Num;

$user2= clone $user;//克隆对象

$user2->rmb->Num+=10;//如果不添加__clone()方法,在这里加10的时候,$user也会被加10

echo $user->rmb->Num;
?>

自由转载,转载请注明: 转载自WEB开发笔记 www.chhua.com

本文链接地址: PHP克隆对象和__clone()方法的使用 http://www.chhua.com/web-note754

相关笔记

更多