您的位置:首页 > 编程语言 > PHP开发

php clone()中的地址传递(&)

2015-08-25 14:29 806 查看
下面这个例子我将展示地址的传递:for example:class A{public $name;public function __construct(){$this->name=&$this->name;}}$a=new A;$a->name="George";$b=clone $a;$b->name="Somebody else";var_dump($a);var_dump($b);输出结果为:
object(A)[1]
public 'name' => &string 'Somebody else' (length=13)
object(A)[2]
public 'name' => &string 'Somebody else' (length=13)
当我把$a->name="George"与[b]$b->name="Somebody else"调换位置时,得出结果为:[/b]
object(A)[1]public 'name' => &string 'George' (length=6)
object(A)[2]public 'name' => &string 'George' (length=6)
当我把[b]$b->name="Somebody else";去掉时:[/b]
object(A)[1]public 'name' => &string 'George' (length=6)
object(A)[2]public 'name' => &string 'George' (length=6)
综上所述:在地址传递时,$a与$b指向的是同一个地址,无论你怎么赋值,所得结果均按照赋值的先后顺序进行输出,与实例化后的对象赋值无关。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: