PHP5的OOP3--对象拷贝_职场<?php
PHP5的OOP3--对象拷贝_职场class    A
PHP5的OOP3--对象拷贝_职场{
PHP5的OOP3--对象拷贝_职场        // 属性(成员)声明
PHP5的OOP3--对象拷贝_职场        public $aa = '缺省值';
PHP5的OOP3--对象拷贝_职场        public $bb=array("苹果","葡萄","香蕉");
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场        // 方法声明
PHP5的OOP3--对象拷贝_职场        public function echo_aa() {
PHP5的OOP3--对象拷贝_职场                echo $this->aa;//not $this->$aa
PHP5的OOP3--对象拷贝_职场        }
PHP5的OOP3--对象拷贝_职场}
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场$a1=new A;
PHP5的OOP3--对象拷贝_职场$a1->aa="我是a1";
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场$a2     =    $a1;
PHP5的OOP3--对象拷贝_职场$a3    =& $a1;
PHP5的OOP3--对象拷贝_职场//如果说把$a1和$a2看做是对同一块内存区的引用的话,那么$a3可以看作是对
PHP5的OOP3--对象拷贝_职场//$a1的引用,也就是说$a1的值得变化引起$a3同样的改变
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场$a1->aa= '我是a1,我已经修改';
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场$a1 = null; // $a1 and $a3 become null
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场var_dump($a1);echo "<br/>";
PHP5的OOP3--对象拷贝_职场var_dump($a2);echo "<br/>";
PHP5的OOP3--对象拷贝_职场var_dump($a3);//$a1都为null了,你$a3也难逃一劫
PHP5的OOP3--对象拷贝_职场?>
 
如果大家还不太明白,看看简单类型的吧:
 
PHP5的OOP3--对象拷贝_职场<?php
PHP5的OOP3--对象拷贝_职场$a=1;
PHP5的OOP3--对象拷贝_职场$b=$a;//简单的值拷贝--之后2者互不干涉对方"生活",哈哈
PHP5的OOP3--对象拷贝_职场$c=& $a;//这里关键
PHP5的OOP3--对象拷贝_职场$a=2;
PHP5的OOP3--对象拷贝_职场
PHP5的OOP3--对象拷贝_职场echo    $a."<br/>";//2
PHP5的OOP3--对象拷贝_职场echo    $b."<br/>";//1
PHP5的OOP3--对象拷贝_职场echo    $c."<br/>";//2
PHP5的OOP3--对象拷贝_职场?>