PHP面向对象之克隆 (clone __clone())

clone和__clone()

  • 创建对象的方式有哪些?

    • 方法一:实例化
    • 方法二:克隆
  • 概念

    • clone是创建对象的方法之一
    • 当执行clone指令的时候,会自动的调用__clone()方法
<?php
class Student {
	static private $name;
	//执行clone指令的时候自动执行
	final public function setName($name) {
		self::$name=$name;	
	}
	public function __clone() {
		echo '正在克隆对象...<br>';
	}
	public function say(){
		echo self::$name.'是个三好学生!<br>';
	}
}
$stu1= new Student;
$stu1->setName('Sunny');
$stu1->say();
$stu2=clone $stu1;		
$stu2->setName('Jerry');
$stu2->say();
?>
原文地址:https://www.cnblogs.com/SharkJiao/p/14117150.html