Arv*_*ind 3 php zend-framework2
我正在使用ZF2表单验证.我必须验证两个字段USERNAME和PASSWORD.一切都很好,但我得到的消息
Please enter username.
Username can not be less than 3 characters.
Please enter password.
Password can not be less than 6 characters.
Run Code Online (Sandbox Code Playgroud)
如果用户未输入任何值,则仅显示此消息
Please enter username.
Please enter password.
Run Code Online (Sandbox Code Playgroud)
我不想在失败时显示字段上的所有错误消息.
提前致谢.
我得到了答案:为了打破ZF2中的验证链,我们必须使用
'break_chain_on_failure'=> true
$this->add(
array(
'name' => 'usernmae',
'required' => true,
'filters' => array(
array('name' => 'Zend\Filter\StringTrim')
),
'validators' => array(
array('name' => 'NotEmpty',
'options' => array('encoding' => 'UTF-8',
'messages' => array(
NotEmpty::IS_EMPTY => 'Please enter username')),
'break_chain_on_failure' => true),
array(
'name' => 'Zend\Validator\StringLength',
'options' => array(
'encoding' => 'UTF-8',
'min' => 3,
'max' => 30,
'messages' => array(
StringLength::TOO_LONG => 'Username can not be more than 30 characters long',
StringLength::TOO_SHORT => 'Username can not be less than 3 characters.')
),
'break_chain_on_failure' => true
)
)
)
);
Run Code Online (Sandbox Code Playgroud)
我的博客:http://programming-tips.in