2010-04-27 49 views
0

我想在Zend框架中創建一個表單。我在下面的代碼中使用了一個字段:Zend框架在數組中的多個驗證器

$this->addElement('text', 'username', array(
    'label'  => 'Username:', 
    'required' => true, 
    'filters' => array('StringTrim'), 
    'validators' => array(
     'alnum' 
    ) 
)); 

This works。但是現在我也想添加一個新的驗證器。在這種情況下StrinLength

$element->addValidator('StringLength', false, array(6, 20)); 

我該如何添加這個驗證器,我已經有了數組? TNX先進

回答

3

不這項工作:

<?PHP 
$this->addElement('text', 'username', array(
    'label'  => 'Username:', 
    'required' => true, 
    'filters' => array('StringTrim'), 
    'validators' => array(
     'alnum', 
     array('StringLength', false, array(6,20)) 
    ) 
)); 

類似the example given in the manual

+0

當我回家時我會嘗試它:)。 Tnx爲您的重播,我會讓你知道它是如何工作的! – iSenne 2010-04-28 08:40:34

0

您可以指定的參數名稱爲在addValidator()方法爲數組鍵:

$this->addElement('text', 'username', array(
    'label'  => 'Username:', 
    'required' => true, 
    'filters' => array('StringTrim'), 
    'validators' => array(
     'alnum', 
     // See below 
     array(
      'validator'  => 'StringLength', 
      'options'  => array(6, 20) 
     ) 
    ) 
));