gpt4 book ai didi

php - Zend Framework : setting a Zend_Form_Element form field to be required, 我如何更改用于确保元素不为空的验证器

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:07:28 24 4
gpt4 key购买 nike

当使用 Zend_Form 时,验证输入是否留空的唯一方法是做

$element->setRequired(true);

如果未设置且元素为空,在我看来,验证未在元素上运行。

如果我确实使用了 setRequired(),该元素会自动获得标准的 NotEmpty 验证器。问题是这个验证器的错误消息很糟糕,“值是空的,但需要一个非空值”。我想更改此消息。目前,我已经通过更改 Zend_Validate_NotEmpty 类来完成此操作,但这有点 hacky。

理想情况下,我希望能够使用我自己的类(派生自 Zend_Validate_NotEmpty)来执行非空检查。

最佳答案

我是这样做的(ZF 1.5):

$name = new Zend_Form_Element_Text('name');
$name->setLabel('Full Name: ')
->setRequired(true)
->addFilter('StripTags')
->addFilter('StringTrim')
->addValidator($MyNotEmpty);

所以,addValidator() 是有趣的部分。消息设置在“错误消息文件”中(将所有自定义消息捆绑在一个文件中):

$MyNotEmpty = new Zend_Validate_NotEmpty();
$MyNotEmpty->setMessage($trans->translate('err.IS_EMPTY'),Zend_Validate_NotEmpty::IS_EMPTY);

希望这有助于...

关于php - Zend Framework : setting a Zend_Form_Element form field to be required, 我如何更改用于确保元素不为空的验证器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34848/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com