OOP PHP and 'Get-Set'


OOP PHP and 'Get-Set'

我想知道是否无论如何都要创建'Get-Set'方法,只有一次可以用于每个属性

下面的代码不正确。只是为了确保你知道我在找什么

class someClass {
    private $attrA;
    private $attrB;
    private $attrC;
    public function get($attr){
        return $this->$attr;
    }
    public function set($attr, $value){
        $this->$attr = $value;
    }
}

是的,您可以按照您所描述的方式使用魔法方法__get()__set()

更多信息请访问官方网站

您想要公共字段还是公共属性?

如果你想要属性,在试图读取或修改属性值时进行操作或验证,那么,我强烈建议为你的属性设置单独的"getter (s)"和单独的"setter (s)"。

一开始看起来很难,但最终它会使你的代码可扩展和可定制…