3
我知道PHP变量变量是如何工作的,但无法理解 为什么这个脚本输出“我是r”。而不是“我是B”。PHP变量变量如何工作?
<?php
class fooo {
var $bar = 'I am bar.';
var $arr = array('I am A.', 'I am B.', 'I am C.');
var $r = 'I am r.';
}
$fooo = new fooo();
$arr = 'arr';
echo $fooo->$arr[1] . "\n";
//above line output
//I am r.
?>
类中的$ arr属于类(属性)。当你在'fooo()'中设置'$ arr'时,你可以这样做:'$ fooo-> arr ='arr';'。现在设置的'$ arr'属于正常范围,而不属于'fooo'类的实例化对象内。尝试谷歌一点如何范围在编程工作。它会变得更清晰:) – 2013-03-20 23:48:43
$ arr里面的foo类被封装并指向不同的内存地址从$ arr变量点 – zkanoca 2013-03-20 23:49:59
@SamDufel那帮他怎么样?我们并不都具有相同的技能水平或相同的学习速度。我们应该让拥有丰富经验的人尽可能多地接受新编码的人,并根据他们的技能调整我们的回应。 – 2013-03-20 23:51:03