Zend framework Zend框架筛选器输入枚举

Zend framework Zend框架筛选器输入枚举,zend-framework,filter-input,Zend Framework,Filter Input,我正在开发一个项目,使用Zend Framework 1.12.3 我使用过滤器输入,需要确保该值在某些值(枚举)内。(例如,频率必须为“立即”、“每天”或“每周”) 我怎样才能做到这一点 谢谢就我个人而言,我会使用验证器来做这件事 $validator = new Zend_Validate_InArray(array('ENUM1' => 'value 1', 'ENUM2' =>

我正在开发一个项目,使用Zend Framework 1.12.3

我使用过滤器输入,需要确保该值在某些值(枚举)内。(例如,频率必须为“立即”、“每天”或“每周”)

我怎样才能做到这一点


谢谢

就我个人而言,我会使用验证器来做这件事

  $validator = new Zend_Validate_InArray(array('ENUM1' => 'value 1',
                                               'ENUM2' => 'value 1',
                                               'ENUM3' => 'value 3'));
   $element->addValidator($validator);

如果我没弄错的话,你可能看起来像这样:- 如果值要在某个值之间,则可以使用输入表单验证器

//为年龄创建文本输入 //应仅包含介于1和100之间的整数值

$age = new Zend_Form_Element_Text('age');
$age  ->setLabel('Age:')
      ->setOptions(array('size' => '4'))
      ->setRequired(true)
      ->addValidator('Int')  //must be an Integer
      ->addValidator('Between', false, array(1,100)); //from 1 to 100
相同,但仅使用Zend_验证类

// create text input for age
// should contain only integer values between 1 and 100


 $age = new Zend_Form_Element_Text('age');
 $age->setLabel('Age:')
    ->setOptions(array('size' => '4'))
    ->setRequired(true)
    ->addValidator(new Zend_Validate_Int())
    ->addValidator(new Zend_Validate_Between(1,100));

我用过这个方法。谢谢@丹尼尔:不客气!:)