具有数组属性的PHP魔术方法

具有数组属性的PHP魔术方法,php,Php,在查看一些代码时,我发现了以下构造,特别是数组($this[$key])。它是如何工作的?它把值放在哪里?我在哪里可以找到它 public function __get($key) { return $this[$key]; } 回答:谢谢,马里奥。它是通过向对象添加ArrayAccess接口并实现offsetGet和offsetSet方法来实现的。这是一个getter,没有什么比您看到的更重要的了。您可以访问私有对象的属性 这是一个好办法,没有什么比你看到的更多。您可以访问私有对象的

在查看一些代码时,我发现了以下构造,特别是数组($this[$key])。它是如何工作的?它把值放在哪里?我在哪里可以找到它

public function __get($key)
{
    return $this[$key];
}

回答:谢谢,马里奥。它是通过向对象添加ArrayAccess接口并实现offsetGet和offsetSet方法来实现的。

这是一个getter,没有什么比您看到的更重要的了。您可以访问私有对象的属性


这是一个好办法,没有什么比你看到的更多。您可以访问私有对象的属性


请参阅和Aha-arrayaccess。谢谢你,马里奥。没有上下文很难说。这一个更可能来自
ArrayObject
。使用
ArrayAccess
时,通常使用
offsetGet
而不是
\u get
。我正在通过Laravel工作。容器类使用此方法,实现了magic方法和ArrayAccess接口,以允许任一调用方法工作。请参阅和Aha-ArrayAccess。谢谢你,马里奥。没有上下文很难说。这一个更可能来自
ArrayObject
。使用
ArrayAccess
时,通常使用
offsetGet
而不是
\u get
。我正在通过Laravel工作。容器类使用这个方法,实现了magic方法和ArrayAccess接口,以允许任何一个调用方法工作$this[$key]$这是类中的私有变量。例如,您有一个私有变量$name;使用此函数,如果调用函数uu get('name'),则会得到$this['name']的值,这是我不理解的数组访问位$this[$key]$这是类中的私有变量。例如,您有一个私有变量$name;使用此函数,如果调用函数uu get('name'),将获得$this['name']的值