Php 如何覆盖Zend_验证程序错误消息?

Php 如何覆盖Zend_验证程序错误消息?,php,zend-framework,validation,Php,Zend Framework,Validation,正如问题标题中所描述的,我希望所有验证器都有默认错误消息,除了NoRecordExists一个 在下面的示例代码中,自定义消息似乎覆盖了所有其他验证器消息,例如,如果第二个条件失败(Alnum),用户将收到“Username ready used”错误消息 $username= new Zend_Form_Element_Text('username'); $username->setLabel('User name:') ->setRequired(TRUE) ->addVa

正如问题标题中所描述的,我希望所有验证器都有默认错误消息,除了NoRecordExists一个

在下面的示例代码中,自定义消息似乎覆盖了所有其他验证器消息,例如,如果第二个条件失败(Alnum),用户将收到“Username ready used”错误消息

$username= new Zend_Form_Element_Text('username');
$username->setLabel('User name:')
->setRequired(TRUE)
->addValidator('NotEmpty',TRUE)
->addValidator('Alnum',TRUE)
->addValidator(new Zend_Validate_Db_NoRecordExists(array(
                    'table'=>'users',
                    'field'=>'username'
                )))
->addErrorMessages(array(
Zend_Validate_Db_NoRecordExists::ERROR_RECORD_FOUND=>'Username already used'
));

将其作为验证程序调用的一部分进行尝试,如下所示:

$username= new Zend_Form_Element_Text('username');
$username->setLabel('User name:')
->setRequired(TRUE)
->addValidator('NotEmpty',TRUE)
->addValidator('Alnum',TRUE)
->addValidator(new Zend_Validate_Db_NoRecordExists(array(
                    'table'=>'users',
                    'field'=>'username',
                    'messages' => array(
                        Zend_Validate_Db_NoRecordExists::ERROR_RECORD_FOUND=>'Username already used')
                )));

这样,消息只与此验证器关联。

将其作为验证器调用的一部分进行尝试,如下所示:

$username= new Zend_Form_Element_Text('username');
$username->setLabel('User name:')
->setRequired(TRUE)
->addValidator('NotEmpty',TRUE)
->addValidator('Alnum',TRUE)
->addValidator(new Zend_Validate_Db_NoRecordExists(array(
                    'table'=>'users',
                    'field'=>'username',
                    'messages' => array(
                        Zend_Validate_Db_NoRecordExists::ERROR_RECORD_FOUND=>'Username already used')
                )));

这样,消息仅与此验证器关联。

可能重复的可能重复的可能重复的可能重复的可能重复的我刚刚使用了相同的代码,但“用户名已使用”未显示。如何带来这条记录已经存在的消息我只是使用了相同的代码,但没有显示“用户名已经使用”。如何将此记录已存在的消息