我有一个模型类,女巫基本上是带有 getter 和 setter 的数据库表中的字段。
class RealEstate extends BaseModel implements FilterProviderInterface
{
public $cityId;
public $stateId;
...
public $transferFields = array();
public function getFilter()
{
return new MethodMatchFilter('getTransferFields');
}
public function setTransferFields($transferFields)
{
$this->transferFields = $transferFields;
}
public function getTransferFields()
{
return $this->transferFields;
}
...
}
在我的 BaseTableGateway 类中,我有一个方法 save,它采用这个模型对象并使用 get 方法将数据提取到一个数组中。
$hydrator = new ClassMethods(false);
$model_data = $hydrator->extract($model);
我需要 getTransferFields() 方法将对象绑定到我的表单,但我不需要它位于最终数组中(在提取时被排除)。
public function getFilter()
{
return new MethodMatchFilter('getTransferFields');
}
此方法完全符合我的要求,但仅适用于 1 种方法。我不知道如何过滤超过 1 种方法。有谁知道这将如何实现?