我有一个应用程序,遇到了一个小问题。我有一个类标题:
class ReportArtGroup extends JournalListElement {
public $artGroupNum;
private $artGroupAmnt;
private $accDesc;
function setArtGroupAmnt($artGroupAmnt) {
$this->artGroupAmnt = MoneyHelper::centsToDollars($artGroupAmnt);
}
function getArtGroupAmnt() {
return $this->artGroupAmnt;
}
}
这只是一个示例类。现在假设我想通过一个函数来检查每个属性的可访问性,例如accessible()。特别是可访问的应按以下方式操作:
accessible($reportArtGroup->artGroupNum) // return true.
accessible($report->artGroupAmnt) // should return true because accessible through getter
accessible($report->accDesc) // Should return false because not accessible
我怎样才能在 PHP 中做到这一点?
问题说明:
使用反射,getProperties()
我可以选择仅获取私有属性或仅获取公共属性。直到现在还找不到将 $artGroupAmnt 归还给公众的方法!
考虑使用isset()
但当然在公共属性中设置 isset 取决于是否设置了属性。
任何可以获取对象可以返回的所有属性的方法(包括神奇地使用 getter)都是完美的。也打开以使用反射或任何方法获取所有属性,然后逐一检查。上面提到的行为虽然是小鬼
阿波罗的战车
米脂
湖上湖