在php中对于对象的=赋值无论是否使用&符号,都回事浅拷贝(即修改副本对象变量时会影响到原对象变量)
如何实现深拷贝:
1,通过克隆对象可以实现深拷贝(但是克隆对象的深拷贝只针对普通属性,如果存在对象属性的变量还是应用赋值)
__clone 方法中国对所有使用对象属性的赋值,改写为clone 对象的方式
2,通过序列号以及反序列号 serialize unserialize 的方式实现
3,通过json_encode 和 js_decode
在php中对于对象的=赋值无论是否使用&符号,都回事浅拷贝(即修改副本对象变量时会影响到原对象变量)
如何实现深拷贝:
1,通过克隆对象可以实现深拷贝(但是克隆对象的深拷贝只针对普通属性,如果存在对象属性的变量还是应用赋值)
__clone 方法中国对所有使用对象属性的赋值,改写为clone 对象的方式
2,通过序列号以及反序列号 serialize unserialize 的方式实现
3,通过json_encode 和 js_decode