我真的被 php 中的引用所困扰。在我的程序中,我有类似的东西:
程序
class Test { private $_property; function __construct($property) { $this->_property = $property; } public function setProperty($property) { $this->_property = $property; } public function getProperty() { return $this->_property; } } function doSmth(Test $var) { $newVar = new Test('test'); //I need to do something here... } $var = new Test('original'); doSmth($var); var_dump($var);
问题
我应该怎么做才能将变量的所有内容复制$newVar
到我的变量中,以便在使用函数之外的函数$var
后能够看到它。而且我不能在我的程序中使用 getter 和 setter,因为我有很多它们,而且会有很多代码。是否有可能在我的限制下解决这个问题?var_dump()
doSmth()
更新:我无法在我的函数中返回值,我doSmth()
也尝试过__clone
但没有任何效果。有人可以告诉我我该怎么做__clone()
吗?