仅在上载文件时才使用Zend 2 Extension Validator

时间:2017-11-29 11:47:33

标签: php validation zend-framework2

我想仅在上传文件时验证文件扩展名。

我有一组包含文件输入元素的字段集。如果我只想为其中一个字段集上传文件并将其余的文件输入元素留空,则表单不会被验证,尽管它们需要= false。此验证会触发" fileExtensionNotFound"错误。

有没有办法将AllowEmpty添加到Extension验证器之前或之前?

        'file' => array(
            'required' => false,
            'validators' => array(
                array(
                    'name' => 'Zend\Validator\File\Extension',
                    'options' => array(
                        'extension' => array('pdf', 'xls','doc'),
                    )
                )
            )
        )

1 个答案:

答案 0 :(得分:0)

我必须指定类型为FileInput。

        'file' => array(
            'type' => '\Zend\InputFilter\FileInput',
            'allow_empty' => true,
            'required' => false,
            'validators' => array(
                array(
                    'name' => 'Zend\Validator\File\Extension',
                    'options' => array(
                        'extension' => array('pdf', 'xls','doc')
                    ),
                ),
            ),
        ),