把对象当参数传递给方法,在方法里改过对象后,影响到外面的对象 因为对象是引用传递过去的
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 |
class Book { public
$name; public
function __construct($name) { $this->name = (string)$name; } public
function getName() { return
$this->name; }}$oldObj
= new Book(‘hongjun‘);$serializeOldObj
= serialize($oldObj);$newObj
= $oldObj;$newObj->name = ‘pingguo‘;echo
$oldObj->name; //pingguo$oldSerOjb
= unserialize($serializeOldObj); echo
$oldSerOjb->name; //hongjunexit; |
注意:序列化对象相当于深复制对象。
php对象当参数传递 && php深复制和浅复制,布布扣,bubuko.com
原文:http://www.cnblogs.com/Alight/p/3721281.html