本文实例讲述了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程序设计有所帮助。
更多php实现对象克隆的方法。