php - 自定义 Zend Framework 2 电子邮件字段验证器错误消息

标签 php zend-framework2

我有一个输入过滤器,其电子邮件字段的验证器配置如下所示;

'validators' => array(
    array (
        'name' => 'EmailAddress',
        'options' => array(
            'messages' => array(
                'emailAddressInvalidFormat' => "Email address doesn't appear to be valid.",
            )
        ),
    ),
    array (
        'name' => 'NotEmpty',
            'options' => array(
                'messages' => array(
                    'isEmpty' => 'Email address is required',
                )
            ),
        ),
    ),
),

它的工作原理,那部分很好,但我将永远被这里的业务部门 mock 的是,如果我推出一个向用户吐出此错误消息的应用程序:

输入与模式不匹配

'/^[a-zA-Z0-9.!#$%&'+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)$/'

那里埋藏着一部奇怪的 Nerd 喜剧(是的,我知道它是准确的,但是,rofl)。

我有两个问题请教这里的好心人:

我如何自定义该错误消息?我似乎找不到正确的 key ,因为我很容易找到 'emailAddressInvalidFormat'

此外,是否可以将所有错误汇总为一个错误?我的意思是。而不是发布:

"Your email pattern just left the building & Your email cannot be blank & Your email doesn't appear to be valid"

我可以为电子邮件添加“单一失败”消息吗?

"Hey bud, check your email, something ain't right!"

感谢您一如既往的帮助。

更新

在这里为这个错误投票 https://github.com/zendframework/zend-validator/issues/41

最佳答案

在 ZF2 中试试这个用于电子邮件验证的自定义消息:

 'validators' => array(
                array( 
                    'name' => 'EmailAddress',
                    'options' => array( 
                        'messages' => array(
                        \Zend\Validator\EmailAddress::INVALID_FORMAT => '"Hey bud, check your email, something ain\'t right!"' 
                        )             
                    )                   
                )             
            )         

关于php - 自定义 Zend Framework 2 电子邮件字段验证器错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17724466/

相关文章:

zend-framework2 - ZF2 with Doctrine 2 - 在实体中注入(inject)依赖项

php - zf2 插入使用 $db->insert($table, $data);风格

javascript - PHP 值重复两次

php - 在 laravel 中使用 ajax 提交表单时找不到 404

javascript - ACF Google map - 信息窗口问题

doctrine-orm - 学说 2 获取 ="EAGER"

php - ZendFramework 2 表单文件验证器

forms - 如何在 Zend 框架 2 中禁用 inArray 验证器表单

php - 新的 5.4 数组短数组语法 : Good practice?

php - Linux 如何在后台进程中依次运行 cat 和 unlink