首页 > 开发 > PHP > 正文

php实现对象克隆的方法

2024-05-04 23:36:42
字体:
来源:转载
供稿:网友

这篇文章主要介绍了php实现对象克隆的方法,实例分析了php对象实例化与克隆的使用技巧,需要的朋友可以参考下

本文实例讲述了php实现对象克隆的方法。分享给大家供大家参考。具体如下:

 

 
  1. <?php  
  2. //定义类staff,其中包括属性id和name  
  3. class staff  
  4. {  
  5. private $id;  
  6. private $name;  
  7. function setID($id)  
  8. {  
  9. $this->id = $id;  
  10. }  
  11. function getID()  
  12. {  
  13. return $this->id;  
  14. }  
  15. function setName($name)  
  16. {  
  17. $this->name = $name;  
  18. }  
  19. function getName()  
  20. {  
  21. return $this->name;  
  22. }  
  23. }  
  24. //创建一个新的staff对象并初始化  
  25. $ee1 = new staff();  
  26. $ee1->setID("145");  
  27. $ee1->setName("Simon");  
  28. //克隆一个新的对象  
  29. $ee2 = clone $ee1;  
  30. //重新设置新对象的ID值  
  31. $ee2->setID("146");  
  32. //输出ee1和ee2  
  33. echo "ee1 ID: ".$ee1->getID()."<br>";  
  34. echo "ee1 Name: ".$ee1->getName()."<br>";  
  35. echo "ee2 ID: ".$ee2->getID()."<br>";  
  36. echo "ee2 Name: ".$ee2->getName()."<br>";  
  37. ?>  

 

 
  1. <?php  
  2. //定义类staff,其中包括属性id和name  
  3. class staff  
  4. {  
  5. private $id;  
  6. private $name;  
  7. function setID($id)  
  8. {  
  9. $this->id = $id;  
  10. }  
  11. function getID()  
  12. {  
  13. return $this->id;  
  14. }  
  15. function setName($name)  
  16. {  
  17. $this->name = $name;  
  18. }  
  19. function getName()  
  20. {  
  21. return $this->name;  
  22. }  
  23. //这里是__clone函数  
  24. function __clone()  
  25. {  
  26. $this->id = $this->id + 1;  
  27. }  
  28. }  
  29. //创建一个新的staff对象并初始化  
  30. $ee1 = new staff();  
  31. $ee1->setID("145");  
  32. $ee1->setName("Simon");  
  33. //克隆一个新的对象  
  34. $ee2 = clone $ee1;  
  35. //重新设置新对象的ID值  
  36. //$ee2->setID("146");  
  37. //输出ee1和ee2  
  38. echo "ee1 ID: ".$ee1->getID()."<br>";  
  39. echo "ee1 Name: ".$ee1->getName()."<br>";  
  40. echo "ee2 ID: ".$ee2->getID()."<br>";  
  41. echo "ee2 Name: ".$ee2->getName()."<br>";  
  42. ?>  

希望本文所述对大家的php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表