public function validate($value)
    {
        $validators = $this->getValidators();
        if ($validators->count() > 0) {
            $result = null;
            foreach ($validators as $validator) {
                $validatorResult = $validator->validate($value);
                if ($validatorResult->hasErrors()) {
                    if ($result === null) {
                        $result = $validatorResult;
                    } else {
                        $result->merge($validatorResult);
                    }
                } else {
                    if ($result === null) {
                        $result = $validatorResult;
                    } else {
                        $result->clear();
                    }
                    break;
                }
            }
        } else {
            $result = new ErrorResult();
        }

        return $result;
    }
public function validate($value)
    {
        $validators = $this->getValidators();
        if ($validators->count() > 0) {
            $result = null;
            foreach ($validators as $validator) {
                $validatorResult = $validator->validate($value);
                if ($validatorResult->hasErrors()) {
                    if ($result === null) {
                        $result = $validatorResult;
                    } else {
                        $result->merge($validatorResult);
                    }
                } else {
                    if ($result === null) {
                        $result = $validatorResult;
                    } else {
                        $result->clear();
                    }
                    break;
                }
            }
        } else {
            $result = new ErrorResult();
        }

        return $result;
    }
public function validate ( $ value ) { $ validators = $ this -> getValidators ( ) ; if ( $ validators -> count ( ) > 0 ) { $ result = null ; foreach ( $ validators as $ validator ) { $ validatorResult = $ validator -> validate ( $ value ) ; if ( $ validatorResult -> hasErrors ( ) ) { if ( $ result === null ) { $ result = $ validatorResult ; } else { $ result -> merge ( $ validatorResult ) ; } } else { if ( $ result === null ) { $ result = $ validatorResult ; } else { $ result -> clear ( ) ; } break ; } } } else { $ result = new ErrorResult ( ) ; } return $ result ; }
Checks if the given value is valid according to the validators of the
disjunction.

So only one validator has to be valid, to make the whole disjunction valid.
Errors are only returned if all validators failed.

@param mixed $value The value that should be validated
@return ErrorResult
@api
Checks if the given value is valid according to the validators of the disjunction .