使用学说时,我偶然发现了这两个单词:访问者和突变器。

这些是仅用于学说还是针对PHP?

这是什么意思?

谢谢

有帮助吗?

解决方案

他们只是守望者和固定器的奇特术语。

class MyClass
{
    private $prop;

    // Accessor (or Getter)
    public function getProp()
    {
        return $this->prop;
    }


    // Mutator (or Setter)
    public function setProp($value)
    {
        $this->prop = $value;
    }

}

其他提示

我们不应该使用 __ get and __ set在PHP5和以后 现在?

如果我正确理解您,这2是特定于对象的编程语言。关键是访问者是一种方法或函数,可提供对类和突变器方法中私有字段的访问权限,允许修改私有字段。我可以继续写有关此内容的文章,但我建议您只用Google搜索这些内容,您会得到很多有关它的信息。这一切都与封装有关< - 建议您也查找该术语。

它们不仅是Getters和Setter的不同术语,至少不是Laravel。

引用文档:“辅助和突变器允许您从模型中检索或设置其价值时格式化雄辩属性。”

https://laravel.com/docs/master/eloquent-mutators

因此,您可以说Getters和Setter是登录器和突变器的子集,它们将数据更改为零。

换句话说,如果我想从桌子上获得原始字段“成本”,我会使用一个getter。如果我想以磅和便士的身份表达和格式化该领域,那么我可以使用登录器。

我还有其他方法可以解决,但这是一种选择。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top