function _get($property_name)
{
if(isset($this->$property_name))
{
return $this->$property_name;
}
else
return NULL;
}
function _set($property_name,$value)
{
$this->$property_name=$value;
}
_set(),_get()是两个特殊函数,分别在赋值时,获取时自动调用,例如在$sa->str=123时,实现上是调用了_set()方法赋值,在echo $a->str时,调用了_get()方法,是通过方法赋值的,并不是在外部访问私有成员
_get()用于读取未定义的属性值,_set()方法用于修改未定义的属性值,这意味着无论什么时候从持续性存储类中读取/写入一个未定义的属性,由这些专门方法来管理,而不是直接改变类的属性.






评论