0
所以我有一个表格使用自定义过滤器(这实际上只是Zend_Filter_Null
的副本)。当我直接调用它,它的工作原理:Zend Framework:我的自定义表单过滤器没有过滤!
$makeZeroNull = new My_Filter_MakeZeroNull();
$null = $makeZeroNull->filter('0');
//$null === null
然而,当我尝试将其添加到一个元素在我的形式,当我打电话getValue()
不过滤值。
class My_Form extends Zend_Form {
public function init() {
$makeZeroNull = new My_Filter_MakeZeroNull();
$this->addElement('text', 'State_ID', array('filters' => array($makeZeroNull)));
}
}
//in controller
if ($form->isValid($_POST)) {
$zero = $form->State_ID->getValue();
//getValue() should return null, but it is returning 0
}
这是怎么回事?我究竟做错了什么?