我有一个输入过滤器,其电子邮件字段的验证器配置如下所示;
'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/