<?php
class A{
public $a = 1;
function aa(){
$b = $this;
echo $b->a; //输出1
$this->a = 2;
echo $b->a; //输出2
}
}
想知道第二次输出为么是2????
<?php
class A{
public $a = 1;
function aa(){
$b = $this;
echo $b->a; //输出1
$this->a = 2;
echo $b->a; //输出2
}
}
想知道第二次输出为么是2????
这个问题的核心在于: 你不了解PHP是怎么传值的。去了解一下吧, 顺便把&符号, 类的__clone魔术方法搞明白。
上面输出2的原因是因为php传递对象默认传递的是引用。
1 回答4.1k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
2 回答2.3k 阅读✓ 已解决
1 回答1.4k 阅读✓ 已解决
2 回答2.2k 阅读
1 回答629 阅读✓ 已解决
802 阅读
http://php.net/manual/zh/language.oop5.references.php
对象和引用