我已经很好地阅读了有关重载的 PHP 规范,并且大多数示例似乎旨在简单地允许定义自定义字段(类似于 stdClass)。
但是我的类中定义的私有字段呢?应该如何检索/分配这些?我可以对可能的值进行切换并对某些值采取行动:
class A
{
private $name;
private $age;
public function __get( $var )
{
switch ( $var )
{
case 'name':
return $this->name;
break;
case 'age':
return $this->age+10; // just to do something different ;)
break;
default:
break;
}
}
}
这是最好的方法,还是有另一种普遍接受的最佳做法?(我不知道是否可以在类中循环类变量,但无论如何这在大多数情况下都不合适,因为您不想返回所有内容。)