访问PHP对象属性的语法是什么?
如何访问PHP对象的属性? 另外,访问对象的属性与访问PHP对象属性的语法是什么?,php,oop,properties,getter-setter,Php,Oop,Properties,Getter Setter,如何访问PHP对象的属性? 另外,访问对象的属性与 $this->$property1与$this->property1相比 当我尝试使用$this->$property1时,出现以下错误: “PHP:无法访问空属性” PHP的对象属性上有一条注释提到了这一点,但该注释并未真正深入解释。$this->property1的意思是: 使用该对象并将变量property1绑定到此对象 $this->$property1表示: 计算字符串$property1并使用结果获取由绑定到此对象的$propert
$this->$property1
与$this->property1
相比
当我尝试使用$this->$property1
时,出现以下错误:
“PHP:无法访问空属性”
PHP的对象属性上有一条注释提到了这一点,但该注释并未真正深入解释。
$this->property1
的意思是:
使用该对象并将变量property1绑定到此对象
$this->$property1
表示:
计算字符串$property1并使用结果获取由绑定到此对象的$property1 result命名的变量
property1
是字符串,而$property1
是变量。因此,当访问$this->$property1
时,PHP会查找名为$property1
的变量的内容,因为它(可能)不存在,所以它是空的,这就是为什么出现无法访问空属性
错误的原因
$property1
//特定变量$this->property1
//特定属性“$”
,否则您将调用一个名为$property1
的变量,该变量可以取任何值
例如:
X类{
公共$property1='价值1';
公共$property2='价值2';
}
$property1='property2'//属性2的名称
$x_对象=新的x();
echo$x_对象->属性1//返回“值1”
echo$x_对象->$property1//返回“值2”
取而代之的是本手册页面,并查找“可变属性名称”部分:(第一部分可能对您也很感兴趣)(在您答案中链接的页面上找到,您应该更仔细地阅读文档)@hakra手册链接通常不被视为答案,因为这些链接往往会发生变化。。。但是,我同意引用和/或链接到来源对于回答者来说是一个更好的变体,如果财产有一个空间,如ˋprop nr 1ˋ?我不理解为什么echo$x_object->$property1;返回“值2”,但不返回“属性2”。。。