PHP 5.0对象模型深度探索之对象复制_php教程-查字典教程网
PHP 5.0对象模型深度探索之对象复制
PHP 5.0对象模型深度探索之对象复制
发布时间:2016-12-29 来源:查字典编辑
摘要:默认地,用__clone方法将建立一个与原对象拥有相同属性和方法的对象.如果你想在克隆时改变默认的内容,你要在__clone中覆写(属性或方...

默认地,用__clone方法将建立一个与原对象拥有相同属性和方法的对象.如果你想在克隆时改变默认的内容,你要在__clone中覆写(属性或方法)。

克隆的方法可以没有参数,但它同时包含this和that指针(that指向被复制的对象)。如果你选择克隆自己,你要小心复制任何你要你的对象包含的信息,从that到this,如果你用__clone来复制,PHP不会执行任何隐性的复制,下面显示了一个用系列序数来自动化对象的例子:

复制代码 代码如下:

classObjectTracker//对象跟踪器

{

privatestatic$nextSerial=0;

private$id;

private$name;

function__construct($name)//构造函数

{

$this->name=$name;

$this->id=++self::$nextSerial;

}

function__clone()//克隆

{

$this->name="Cloneof$this->name";

$this->id=++self::$nextSerial;

}

functiongetId()//获取id属性的值

{

return($this->id);

}

functiongetName()//获取name属性的值

{

return($this->name);

}

}

$ot=newObjectTracker("Zeev'sObject");

$ot2=clone$ot;

//输出:1Zeev'sObject

print($ot->getId()."".$ot->getName()."");

//输出:2CloneofZeev'sObject

print($ot2->getId()."".$ot2->getName()."");

?>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新php教程学习
    热门php教程学习
    编程开发子分类