我遇到Zend_Form空验证器的问题,即使表单为空,它也会验证并返回true。例如,如果username ='',验证器返回true。
表格
$this->addElement('text','username',array(
'label' => 'APP_FORM_USERNAME',
'require' => true,
'validators' => array(
array('validator' => 'StringLength', true, 'options' => array(3, 50)),
array('validator' => 'Alpha', true),
array('validator' => 'NotEmpty', true, 'options' => Zend_Validate_NotEmpty::ALL)
),
'filters' => array(
'StringTrim'
))
);
如果字符串为空,我怎么能返回false? THX。
答案 0 :(得分:1)
我会回答,尽管我认为你可能已经找到了答案,因为几个月前你已经提出了这个问题。
setRequired(true)
实际上与notEmpty
验证器具有相同的效果。它将在验证器堆栈之上添加notEmpty
验证器。
您的错误只是一个简单的语法错误: require 应必需。