【发布时间】:2010-03-15 21:47:10
【问题描述】:
我正在验证表单中的文本字段,如下所示:
$name = new Zend_Form_Element_Text('name');
$name->setLabel('First Name:')
->setRequired(true)
->addFilter(new Zend_Filter_StringTrim())
->addValidator('regex',true,array('/^[(a-zA-Z0-9)]+$/'))
->addErrorMessage('Please enter a valid first name');
我想要完成的是 - 如何显示有意义的错误消息? 例如:如果名字是'XYZ-',我如何显示'- 不允许在名字中。'
有没有办法可以访问正则表达式失败的字符? 你会完全推荐其他东西吗?
我曾想过编写一个自定义验证器,但正则表达式非常简单,所以我不明白这一点。 我在任何地方都找不到适合 zend 'regex' 验证器的文档。
如果我不覆盖默认错误消息,我会简单地得到如下内容: ';;;hhbhbhb' 与模式 '/^[(a-zA-Z0-9)]+$/' 不匹配 - 我显然不想向用户显示。
非常感谢您的意见。
【问题讨论】:
标签: php regex zend-framework zend-form