如何在PHP中创建对象的副本?
要在PHP中创建对象的副本,代码如下-
示例
<?php class Demo { public $val1; public $val2; } $ob = new Demo(); $copyOb = clone $ob; $ob->val1 = "Jack"; $ob->val2 = "Kevin"; $copyOb->val1 = "Tom"; $copyOb->val2 = "Ryan "; echo "$ob->val1$ob->val2\n"; echo "$copyOb->val1$copyOb->val2\n"; ?>
输出结果
这将产生以下输出-
JackKevin TomRyan
示例
现在让我们来看另一个示例-
<?php class Demo { public $deptname; public $deptzone; public function __construct($a, $b) { $this->deptname = $a; $this->deptzone = $b; } } $val = new Demo('Finance', 'West'); $copy = clone $val; print_r($val); print_r($copy); ?>
输出结果
这将产生以下输出-
Demo Object( [deptname] => Finance [deptzone] => West ) Demo Object( [deptname] => Finance [deptzone] => West )