为什么不使用关联数组而不是类中的属性?

时间:2014-02-03 11:36:45

标签: php class object attributes

有人可以解释一下为什么当我看到一个php类时总会有很多属性?使用关联数组会不会更好?

例如:

class Stundent {
     public $id;
     public $name;
     public $mail;
}

它不会是这样的:

class Stundent {

 public $state= {id=>$id,name=>$name,mail=>$mail}

}

在这种情况下,我会有更多的灵活性。我可以添加新属性而无需再次触摸我的代码。

只是想知道我错过了什么:D

1 个答案:

答案 0 :(得分:1)

可见性。除非整个组属于同一类型,否则不能将它们设置为私有或受保护。

此外,你不能使用setter和getter(或者你必须做出不好的黑客攻击,比如传递索引)。

在我看来,这种设计'技术'将更难扩展或维护。