class CurrencyValidator in Plug 7
Validates whether a value is a valid currency.
@author Miha Vrhovnik <miha.vrhovnik@pagein.si>
@api
Hierarchy
- class \Symfony\Component\Validator\ConstraintValidator implements ConstraintValidatorInterface
- class \Symfony\Component\Validator\Constraints\CurrencyValidator
 
 
Expanded class hierarchy of CurrencyValidator
1 file declares its use of CurrencyValidator
- CurrencyValidatorTest.php in lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Tests/ Constraints/ CurrencyValidatorTest.php  
File
- lib/
Symfony/ validator/ Symfony/ Component/ Validator/ Constraints/ CurrencyValidator.php, line 26  
Namespace
Symfony\Component\Validator\ConstraintsView source
class CurrencyValidator extends ConstraintValidator {
  /**
   * {@inheritdoc}
   */
  public function validate($value, Constraint $constraint) {
    if (!$constraint instanceof Currency) {
      throw new UnexpectedTypeException($constraint, __NAMESPACE__ . '\\Currency');
    }
    if (null === $value || '' === $value) {
      return;
    }
    if (!is_scalar($value) && !(is_object($value) && method_exists($value, '__toString'))) {
      throw new UnexpectedTypeException($value, 'string');
    }
    $value = (string) $value;
    $currencies = Intl::getCurrencyBundle()
      ->getCurrencyNames();
    if (!isset($currencies[$value])) {
      $this
        ->buildViolation($constraint->message)
        ->setParameter('{{ value }}', $this
        ->formatValue($value))
        ->addViolation();
    }
  }
}Members
| 
            Name | 
                  Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| 
            ConstraintValidator:: | 
                  protected | property | ||
| 
            ConstraintValidator:: | 
                  protected | function | Wrapper for {@link ExecutionContextInterface::buildViolation} that supports the 2.4 context API. | |
| 
            ConstraintValidator:: | 
                  protected | function | Wrapper for {@link ExecutionContextInterface::buildViolation} that supports the 2.4 context API. | |
| 
            ConstraintValidator:: | 
                  protected | function | Returns a string representation of the type of the value. | |
| 
            ConstraintValidator:: | 
                  protected | function | Returns a string representation of the value. | |
| 
            ConstraintValidator:: | 
                  protected | function | Returns a string representation of a list of values. | |
| 
            ConstraintValidator:: | 
                  public | function | 
            Initializes the constraint validator. Overrides ConstraintValidatorInterface:: | 
                  1 | 
| 
            ConstraintValidator:: | 
                  constant | Whether to cast objects with a "__toString()" method to strings. | ||
| 
            ConstraintValidator:: | 
                  constant | Whether to format {@link \DateTime} objects as RFC-3339 dates ("Y-m-d H:i:s"). | ||
| 
            CurrencyValidator:: | 
                  public | function | 
            Checks if the passed value is valid. Overrides ConstraintValidatorInterface:: |