public function getValidators() {
		if ($this->_validators === false) {
			return;
		}
		
		if ($this->_validators === null) {
			$definition = $this->getValidationDefinition();
			
			if ($definition === null) {
				$this->_validators = false;
				return;
			}
			
			$validators = [];
			
			foreach ($definition as $propName => $propValidators) {
				$propValidators = (array) $propValidators;
				
				if (! isset($validators[$propName])) {
					$validators[$propName] = [];
				}
				
				foreach ($propValidators as $name => $validatorDefinition) {
					if ($validatorDefinition instanceof ValidatorInterface) {
						$validators[$propName][$name] = $validatorDefinition;
					}
					else if (is_string($validatorDefinition)) {
						$validator = $this->getValidatorsLocator()->get($validatorDefinition);
						
						if (! $validator instanceof ValidatorInterface) {
							throw new Exception('Validator must implements "ValidatorInterface" interface');
						}
						
						$validators[$propName][$name] = $validator;
					}
					else if (is_array($validatorDefinition)) {
						if (! isset($validatorDefinition[0]) || ! is_string($validatorDefinition[0])) {
							throw new Exception('Invalid validator definition for the "' . $propName . '" property');
						}
						
						$validatorName = $validatorDefinition[0];
						unset($validatorDefinition[0]);
						
						$validator = $this->getValidatorsLocator()->getByArguments($validatorName, [$validatorDefinition]);
						
						if (! $validator instanceof ValidatorInterface) {
							throw new Exception('Validator must implements "ValidatorInterface" interface');
						}
						
						$validators[$propName][$name] = $validator;
					}
					else {
						throw new Exception('Invalid validator definition for the "' . $propName . '" property');
					}
				}
			}
			
			$this->_validators = $validators;
		}
		
		return $this->_validators;
	}
public function getValidators() {
		if ($this->_validators === false) {
			return;
		}
		
		if ($this->_validators === null) {
			$definition = $this->getValidationDefinition();
			
			if ($definition === null) {
				$this->_validators = false;
				return;
			}
			
			$validators = [];
			
			foreach ($definition as $propName => $propValidators) {
				$propValidators = (array) $propValidators;
				
				if (! isset($validators[$propName])) {
					$validators[$propName] = [];
				}
				
				foreach ($propValidators as $name => $validatorDefinition) {
					if ($validatorDefinition instanceof ValidatorInterface) {
						$validators[$propName][$name] = $validatorDefinition;
					}
					else if (is_string($validatorDefinition)) {
						$validator = $this->getValidatorsLocator()->get($validatorDefinition);
						
						if (! $validator instanceof ValidatorInterface) {
							throw new Exception('Validator must implements "ValidatorInterface" interface');
						}
						
						$validators[$propName][$name] = $validator;
					}
					else if (is_array($validatorDefinition)) {
						if (! isset($validatorDefinition[0]) || ! is_string($validatorDefinition[0])) {
							throw new Exception('Invalid validator definition for the "' . $propName . '" property');
						}
						
						$validatorName = $validatorDefinition[0];
						unset($validatorDefinition[0]);
						
						$validator = $this->getValidatorsLocator()->getByArguments($validatorName, [$validatorDefinition]);
						
						if (! $validator instanceof ValidatorInterface) {
							throw new Exception('Validator must implements "ValidatorInterface" interface');
						}
						
						$validators[$propName][$name] = $validator;
					}
					else {
						throw new Exception('Invalid validator definition for the "' . $propName . '" property');
					}
				}
			}
			
			$this->_validators = $validators;
		}
		
		return $this->_validators;
	}
public function getValidators ( ) { if ( $ this -> _validators === false ) { return ; } if ( $ this -> _validators === null ) { $ definition = $ this -> getValidationDefinition ( ) ; if ( $ definition === null ) { $ this -> _validators = false ; return ; } $ validators = [ ] ; foreach ( $ definition as $ propName => $ propValidators ) { $ propValidators = ( array ) $ propValidators ; if ( ! isset ( $ validators [ $ propName ] ) ) { $ validators [ $ propName ] = [ ] ; } foreach ( $ propValidators as $ name => $ validatorDefinition ) { if ( $ validatorDefinition instanceof ValidatorInterface ) { $ validators [ $ propName ] [ $ name ] = $ validatorDefinition ; } else if ( is_string ( $ validatorDefinition ) ) { $ validator = $ this -> getValidatorsLocator ( ) -> get ( $ validatorDefinition ) ; if ( ! $ validator instanceof ValidatorInterface ) { throw new Exception ( 'Validator must implements "ValidatorInterface" interface' ) ; } $ validators [ $ propName ] [ $ name ] = $ validator ; } else if ( is_array ( $ validatorDefinition ) ) { if ( ! isset ( $ validatorDefinition [ 0 ] ) || ! is_string ( $ validatorDefinition [ 0 ] ) ) { throw new Exception ( 'Invalid validator definition for the "' . $ propName . '" property' ) ; } $ validatorName = $ validatorDefinition [ 0 ] ; unset ( $ validatorDefinition [ 0 ] ) ; $ validator = $ this -> getValidatorsLocator ( ) -> getByArguments ( $ validatorName , [ $ validatorDefinition ] ) ; if ( ! $ validator instanceof ValidatorInterface ) { throw new Exception ( 'Validator must implements "ValidatorInterface" interface' ) ; } $ validators [ $ propName ] [ $ name ] = $ validator ; } else { throw new Exception ( 'Invalid validator definition for the "' . $ propName . '" property' ) ; } } } $ this -> _validators = $ validators ; } return $ this -> _validators ; }
Get the data validators

@return array
@throws Exception
Get the data validators