我有两个元素,成人不,孩子不,至少需要一个字段。如何在zend框架中验证它并生成错误消息。
答案 0 :(得分:2)
您需要创建自己的验证器。在这种情况下,我认为您可以使用Zend_Validate_Identical,复制其代码并将isValid方法更改为以下内容:
public function isValid($value, $context = null)
{
$this->_setValue((string) $value);
if (($context !== null) && isset($context) && array_key_exists($this->getToken(), $context)) {
$token = $context[$this->getToken()];
} else {
$token = $this->getToken();
}
if ($token === null) {
$this->_error(self::MISSING_TOKEN);
return false;
}
$strict = $this->getStrict();
// change != to ==
if (($strict && ($value === $token)) || (!$strict && ($value == $token)) && (&token =='' || $value == '') {
$this->_error(self::**YOUR_ERROR _CODE**);
return false;
}
return true;
}
此代码未经过测试但应该可以使用:)