<?php
/**
*PHP面向对象:克隆对象2
*使用魔术方法__clone()
*/
class Person{
private $name;
private $sex;
private $age;
// 构造方法
function __construct($name="",$sex="",$age=1){
$this->name=$name;
$this->sex=$sex;
$this->age=$age;
}
// 此方法在对象克隆时自动调用,用来为新对象重新赋值
function __clone(){
$this->name=$this->name."的副本";
$this->age=10;
}
function say(){
echo "我是".$this->name.",性别".$this->sex.",年龄".$this->age."<br/>";
}
}
$p1=new Person("不高兴","男",12);
$p1->say();
$p2=clone $p1;
$p2->say();
/**
*PHP面向对象:克隆对象2
*使用魔术方法__clone()
*/
class Person{
private $name;
private $sex;
private $age;
// 构造方法
function __construct($name="",$sex="",$age=1){
$this->name=$name;
$this->sex=$sex;
$this->age=$age;
}
// 此方法在对象克隆时自动调用,用来为新对象重新赋值
function __clone(){
$this->name=$this->name."的副本";
$this->age=10;
}
function say(){
echo "我是".$this->name.",性别".$this->sex.",年龄".$this->age."<br/>";
}
}
$p1=new Person("不高兴","男",12);
$p1->say();
$p2=clone $p1;
$p2->say();