在Zend_Form类中的addElement()上使用Between验证器

时间:2012-11-20 18:07:01

标签: php validation zend-framework

我正在Zend 1.12中建立一个基本的Zend_Form,以便确定新员工的出生日期和聘用日期。我想在日期做一个非常基本的验证 - 此时我并不关心2月30日的无意义日期;我只想在各个输入字段中获得1900-9999,1-12,1-31等范围。

表单将加载以下代码,但是有效年份(1982年)或不是(2),我在提交时收到应用程序错误:“缺少选项。'min'和'max'必须给出”

我想我的语法不对。

$this->addElement('text', 'byear', array(
        'label'      => 'Birth Date :: Year:',
        'required'   => true,
        'style' => 'width:75px;',
        'filters'    => array('StringTrim'),
        'decorators' => array('Label',
        'ViewHelper'),
        'validators' => array(
            array('Between', 1900, 9999))
    ));

这也不起作用:

'validators' => array(array('Between', 'min' => 1900, 'max' => 9999))

1 个答案:

答案 0 :(得分:2)

尝试

'validators' => array(
    array('Between', false, array('min' => 1900, 'max' => 9999))
 )