Zend form_element添加带有自定义错误消息的验证器

luc*_*uca 2 php validation zend-framework

我有一个Zend_Form_element:

$text=new Zend_Form_Element_Text('text');
Run Code Online (Sandbox Code Playgroud)

我添加了一个正则表达式验证器:

$text->addValidator('regex', false, array('/[\\?\\&]v=([^\\?\\&]+)/'));
Run Code Online (Sandbox Code Playgroud)

如何为验证器设置自定义错误消息?

Nik*_*las 6

如果您知道验证器提供的特定错误代码,则可以添加自定义验证错误消息.在正则表达式的情况下,我认为它给出了"regexNotMatch"错误,因此对于这种特殊情况,您可以使用:

$text->addValidator('regex', false, array(
    '/[\\?\\&]v=([^\\?\\&]+)/',
    'messages'=>array(
    'regexNotMatch'=>'There was some random custom error'
    )    
));
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请查看此处.

一些开发人员可能希望为验证器提供自定义错误消息.Zend_Form_Element :: addValidator()方法的$ options参数允许您通过提供键"消息"并将其映射到键/值对数组来设置消息模板.您需要知道特定验证器的各种验证错误类型的错误代码

类似的问题在这里这里