搜索

首页  >  问答  >  正文

PHP对象属性的访问语法是什么?

<p><strong>如何访问PHP对象的属性?</strong></p> <p>此外,使用<code>$this->$property1</code>和<code>$this->property1</code>访问对象属性有什么区别?</p> <p>当我尝试使用<code>$this->$property1</code>时,出现以下错误:</p> <blockquote> <p>'PHP:无法访问空属性'。</p> </blockquote> <p>PHP的对象属性文档中有一个评论提到了这个问题,但评论没有详细解释。</p>
P粉966335669P粉966335669461 天前648

全部回复(2)我来回复

  • P粉143640496

    P粉1436404962023-08-23 18:25:47

    $this->property1 的意思是:

    使用该对象并获取绑定到该对象的变量 property1

    $this->$property1 的意思是:

    评估字符串 $property1 并使用结果获取由 $property1 结果命名的变量,该变量绑定到该对象

    回复
    0
  • P粉336536706

    P粉3365367062023-08-23 10:46:49

    1. $property1 // 特定变量
    2. $this->property1 // 特定属性

    在类的一般用法中,不需要使用"$",否则你将调用一个名为$property1的变量,它可以取任何值。

    示例:

    class X {
      public $property1 = 'Value 1';
      public $property2 = 'Value 2';
    }
    $property1 = 'property2';  // 属性2的名称
    $x_object = new X();
    echo $x_object->property1; // 返回 'Value 1'
    echo $x_object->$property1; // 返回 'Value 2'
    

    回复
    0
  • 取消回复