如果有一个实例化的对象:Object1
那么:
$Object2 = $Object1
$Object2 = clone $Object1
有什么区别呢?
$Object2 = $Object1 是引用;
$Object2 = clone $Object1 是克隆;
引用就是:当改变$Object1对象时,$Object2也做相同的变化。
克隆就是:克隆的对象$Object1与原来的对象没有任何关系,它是将原来的对象从当前位置从新复制了一份。
那么在实际的开发当中怎么判断两个对象之间的关系是克隆可是引用呢?
这时可以使用比较运算符“==”和"==="。两个等号“==”是比较两个对象的内容,三个等号“===”是比较对象的引用地址。
显然,如果是引用的话,他们的引用地址应该是相同的。