0

我一直在寻找几个小时,我在任何地方都找不到任何文档,说明如何使用 Zend_Config_Ini 作为 Zend_Form 的初始化设置元素的默认值。

我已经看到了有关如何在普通 PHP 代码中执行此操作的文档...

$validators = array(
    'month' => array(
        'digits',
        'default' => '1'
    )
);
// no value for 'month' field
$data = array();
$input = new Zend_Filter_Input(null, $validators, $data);
echo $input->month; // echoes 1

但是没有关于如何在 .ini 文件中设置它的文档。我已经尝试了一切(显然不是,但似乎如此)!

有人知道“语法”吗?

query.elements.rows.type = "text"
query.elements.rows.options.required = true
query.elements.rows.options.validators.rows.validator = "digits"
query.elements.rows.default = 0 # DOESN'T WORK!

如果提供的“行”值不是“数字”,那么我希望它设置为“0”。

提前致谢!!

4

1 回答 1

1
query.elements.rows.type = "text"
query.elements.rows.options.required = true
query.elements.rows.options.validators.rows.validator = "digits"
query.elements.rows.options.value = 0 # This works ;)

如果提供的“行”值不是“数字”,那么我希望它设置为“0”。

这是默认选项无法实现的。试试下面的代码:

if( !$form->isValid( $_POST ) ) {
    $errorsMessages = $form->getMessages();
    if(isset($errorsMessages['rows']['notDigits'])){
        $form->getElement( 'rows' )->setValue( '0' ) ;
    }
}
于 2010-01-14T10:57:36.390 回答