2

我正在 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))
4

1 回答 1

2

尝试

'validators' => array(
    array('Between', false, array('min' => 1900, 'max' => 9999))
 )
于 2012-11-20T18:18:29.700 回答