这篇文章主要介绍了php实现对象克隆的方法,实例分析了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程序设计有所帮助。 |