PHP只允许每个类有一个getter和一个setter函数,它们是
__get
&
__set
神奇的方法。这两个神奇的方法必须处理所有私有/无法访问的财产的get和set请求。
http://www.php.net/manual/en/language.oop5.magic.php
private function set_eid($id)
{
//set it...
$this->eid = $id;
}
private function get_eid($id)
{
//return it...
return $this->eid;
}
public function __set($name, $value)
{
switch($name)
{
case 'eid':
$this->set_eid($value);
break;
}
}
public function __get($name)
{
switch($name)
{
case 'eid':
return $this->get_eid();
break;
}
}
在2个switch语句中,您还可以添加其他财产的名称。
记住这一点很重要
__获取
和
__集合
仅当变量不可访问时调用,这意味着从类内部获取或设置时,仍必须手动调用
set__eid
.