同一类有两个对象:
$obj1 = new MyClass();
$obj2 = new MyClass();
然后我将一个函数func
应用于$obj2
. 然而,一旦这个函数被执行,我注意到它的内容$obj1
也发生了神奇的变化。我不使用对$obj1
inside的任何引用func
。这个问题的可能原因是什么?我该如何解决?
$obj2 = func($obj2,$vars);
我应该说我之前使用了其他功能func
,它们也$obj2
用作输入。但是,在他们执行之后$obj1
get 的内容并没有改变。
PS 当我在 Zend Studio 中调试这段代码并进入 func 时,Watch list Expressions 会说$obj1 = null
,但我认为这很好,因为func
它保存在不同的 PHP 文件中。