__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <[email protected]> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Validator\Constraints; use Symfony\Component\Validator\Constraint; use Symfony\Component\Validator\ConstraintValidator; use Symfony\Component\Validator\Exception\ConstraintDefinitionException; use Symfony\Component\Validator\Exception\RuntimeException; use Symfony\Component\Validator\Exception\UnexpectedTypeException; use Symfony\Component\Validator\Exception\UnexpectedValueException; /** * ChoiceValidator validates that the value is one of the expected values. * * @author Fabien Potencier <[email protected]> * @author Florian Eckerstorfer <[email protected]> * @author Bernhard Schussek <[email protected]> */ class ChoiceValidator extends ConstraintValidator { /** * @return void */ public function validate(mixed $value, Constraint $constraint) { if (!$constraint instanceof Choice) { throw new UnexpectedTypeException($constraint, Choice::class); } if (!\is_array($constraint->choices) && !$constraint->callback) { throw new ConstraintDefinitionException('Either "choices" or "callback" must be specified on constraint Choice.'); } if (null === $value) { return; } if ($constraint->multiple && !\is_array($value)) { throw new UnexpectedValueException($value, 'array'); } if ($constraint->callback) { if (!\is_callable($choices = [$this->context->getObject(), $constraint->callback]) && !\is_callable($choices = [$this->context->getClassName(), $constraint->callback]) && !\is_callable($choices = $constraint->callback) ) { throw new ConstraintDefinitionException('The Choice constraint expects a valid callback.'); } $choices = $choices(); } else { $choices = $constraint->choices; } if (true !== $constraint->strict) { throw new RuntimeException('The "strict" option of the Choice constraint should not be used.'); } if ($constraint->multiple) { foreach ($value as $_value) { if ($constraint->match xor \in_array($_value, $choices, true)) { $this->context->buildViolation($constraint->multipleMessage) ->setParameter('{{ value }}', $this->formatValue($_value)) ->setParameter('{{ choices }}', $this->formatValues($choices)) ->setCode(Choice::NO_SUCH_CHOICE_ERROR) ->setInvalidValue($_value) ->addViolation(); return; } } $count = \count($value); if (null !== $constraint->min && $count < $constraint->min) { $this->context->buildViolation($constraint->minMessage) ->setParameter('{{ limit }}', $constraint->min) ->setPlural((int) $constraint->min) ->setCode(Choice::TOO_FEW_ERROR) ->addViolation(); return; } if (null !== $constraint->max && $count > $constraint->max) { $this->context->buildViolation($constraint->maxMessage) ->setParameter('{{ limit }}', $constraint->max) ->setPlural((int) $constraint->max) ->setCode(Choice::TOO_MANY_ERROR) ->addViolation(); return; } } elseif ($constraint->match xor \in_array($value, $choices, true)) { $this->context->buildViolation($constraint->message) ->setParameter('{{ value }}', $this->formatValue($value)) ->setParameter('{{ choices }}', $this->formatValues($choices)) ->setCode(Choice::NO_SUCH_CHOICE_ERROR) ->addViolation(); } } }
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| AbstractComparison.php | File | 2.19 KB | 0664 |
|
| AbstractComparisonValidator.php | File | 4.1 KB | 0664 |
|
| All.php | File | 1.02 KB | 0664 |
|
| AllValidator.php | File | 1.31 KB | 0664 |
|
| AtLeastOneOf.php | File | 1.93 KB | 0664 |
|
| AtLeastOneOfValidator.php | File | 2.54 KB | 0664 |
|
| Bic.php | File | 3.29 KB | 0664 |
|
| BicValidator.php | File | 6.13 KB | 0664 |
|
| Blank.php | File | 1.19 KB | 0664 |
|
| BlankValidator.php | File | 1.07 KB | 0664 |
|
| Callback.php | File | 1.58 KB | 0664 |
|
| CallbackValidator.php | File | 2.09 KB | 0664 |
|
| CardScheme.php | File | 2.28 KB | 0664 |
|
| CardSchemeValidator.php | File | 5.01 KB | 0664 |
|
| Cascade.php | File | 1.26 KB | 0664 |
|
| Choice.php | File | 3.12 KB | 0664 |
|
| ChoiceValidator.php | File | 4.09 KB | 0664 |
|
| Cidr.php | File | 2.78 KB | 0664 |
|
| CidrValidator.php | File | 2.32 KB | 0664 |
|
| Collection.php | File | 3.7 KB | 0664 |
|
| CollectionValidator.php | File | 3.4 KB | 0664 |
|
| Composite.php | File | 5.44 KB | 0664 |
|
| Compound.php | File | 1.39 KB | 0664 |
|
| CompoundValidator.php | File | 1002 B | 0664 |
|
| Count.php | File | 3.5 KB | 0664 |
|
| CountValidator.php | File | 2.8 KB | 0664 |
|
| Country.php | File | 1.64 KB | 0664 |
|
| CountryValidator.php | File | 1.55 KB | 0664 |
|
| CssColor.php | File | 3.7 KB | 0664 |
|
| CssColorValidator.php | File | 5.36 KB | 0664 |
|
| Currency.php | File | 1.56 KB | 0664 |
|
| CurrencyValidator.php | File | 1.54 KB | 0664 |
|
| Date.php | File | 1.33 KB | 0664 |
|
| DateTime.php | File | 1.8 KB | 0664 |
|
| DateTimeValidator.php | File | 2.71 KB | 0664 |
|
| DateValidator.php | File | 2.12 KB | 0664 |
|
| DisableAutoMapping.php | File | 1.27 KB | 0664 |
|
| DivisibleBy.php | File | 956 B | 0664 |
|
| DivisibleByValidator.php | File | 1.52 KB | 0664 |
|
| Email.php | File | 3.45 KB | 0664 |
|
| EmailValidator.php | File | 4.79 KB | 0664 |
|
| EnableAutoMapping.php | File | 1.27 KB | 0664 |
|
| EqualTo.php | File | 999 B | 0664 |
|
| EqualToValidator.php | File | 723 B | 0664 |
|
| Existence.php | File | 612 B | 0664 |
|
| Expression.php | File | 2.63 KB | 0664 |
|
| ExpressionLanguageProvider.php | File | 1.09 KB | 0664 |
|
| ExpressionLanguageSyntax.php | File | 1.84 KB | 0664 |
|
| ExpressionLanguageSyntaxValidator.php | File | 2.37 KB | 0664 |
|
| ExpressionSyntax.php | File | 1.44 KB | 0664 |
|
| ExpressionSyntaxValidator.php | File | 1.92 KB | 0664 |
|
| ExpressionValidator.php | File | 2.05 KB | 0664 |
|
| File.php | File | 7.84 KB | 0664 |
|
| FileValidator.php | File | 11.92 KB | 0664 |
|
| GreaterThan.php | File | 1001 B | 0664 |
|
| GreaterThanOrEqual.php | File | 1020 B | 0664 |
|
| GreaterThanOrEqualValidator.php | File | 795 B | 0664 |
|
| GreaterThanValidator.php | File | 767 B | 0664 |
|
| GroupSequence.php | File | 2.62 KB | 0664 |
|
| GroupSequenceProvider.php | File | 790 B | 0664 |
|
| Hostname.php | File | 1.37 KB | 0664 |
|
| HostnameValidator.php | File | 2.03 KB | 0664 |
|
| Iban.php | File | 1.92 KB | 0664 |
|
| IbanValidator.php | File | 12.94 KB | 0664 |
|
| IdenticalTo.php | File | 1.02 KB | 0664 |
|
| IdenticalToValidator.php | File | 741 B | 0664 |
|
| Image.php | File | 9.63 KB | 0664 |
|
| ImageValidator.php | File | 9.21 KB | 0664 |
|
| Ip.php | File | 3.32 KB | 0664 |
|
| IpValidator.php | File | 2.48 KB | 0664 |
|
| IsFalse.php | File | 1.19 KB | 0664 |
|
| IsFalseValidator.php | File | 1.12 KB | 0664 |
|
| IsNull.php | File | 1.19 KB | 0664 |
|
| IsNullValidator.php | File | 1.05 KB | 0664 |
|
| IsTrue.php | File | 1.19 KB | 0664 |
|
| IsTrueValidator.php | File | 1.11 KB | 0664 |
|
| Isbn.php | File | 2.78 KB | 0664 |
|
| IsbnValidator.php | File | 5.55 KB | 0664 |
|
| Isin.php | File | 1.65 KB | 0664 |
|
| IsinValidator.php | File | 2.46 KB | 0664 |
|
| Issn.php | File | 2.24 KB | 0664 |
|
| IssnValidator.php | File | 4.07 KB | 0664 |
|
| Json.php | File | 1.19 KB | 0664 |
|
| JsonValidator.php | File | 1.37 KB | 0664 |
|
| Language.php | File | 1.65 KB | 0664 |
|
| LanguageValidator.php | File | 1.55 KB | 0664 |
|
| Length.php | File | 4.64 KB | 0664 |
|
| LengthValidator.php | File | 3.73 KB | 0664 |
|
| LessThan.php | File | 998 B | 0664 |
|
| LessThanOrEqual.php | File | 1017 B | 0664 |
|
| LessThanOrEqualValidator.php | File | 787 B | 0664 |
|
| LessThanValidator.php | File | 759 B | 0664 |
|
| Locale.php | File | 1.66 KB | 0664 |
|
| LocaleValidator.php | File | 1.62 KB | 0664 |
|
| Luhn.php | File | 1.55 KB | 0664 |
|
| LuhnValidator.php | File | 3.15 KB | 0664 |
|
| Negative.php | File | 653 B | 0664 |
|
| NegativeOrZero.php | File | 681 B | 0664 |
|
| NoSuspiciousCharacters.php | File | 4.61 KB | 0664 |
|
| NoSuspiciousCharactersValidator.php | File | 4.17 KB | 0664 |
|
| NotBlank.php | File | 1.8 KB | 0664 |
|
| NotBlankValidator.php | File | 1.36 KB | 0664 |
|
| NotCompromisedPassword.php | File | 1.63 KB | 0664 |
|
| NotCompromisedPasswordValidator.php | File | 3.58 KB | 0664 |
|
| NotEqualTo.php | File | 1003 B | 0664 |
|
| NotEqualToValidator.php | File | 734 B | 0664 |
|
| NotIdenticalTo.php | File | 1.02 KB | 0664 |
|
| NotIdenticalToValidator.php | File | 749 B | 0664 |
|
| NotNull.php | File | 1.19 KB | 0664 |
|
| NotNullValidator.php | File | 1.06 KB | 0664 |
|
| Optional.php | File | 431 B | 0664 |
|
| PasswordStrength.php | File | 1.79 KB | 0664 |
|
| PasswordStrengthValidator.php | File | 3.06 KB | 0664 |
|
| Positive.php | File | 656 B | 0664 |
|
| PositiveOrZero.php | File | 684 B | 0664 |
|
| Range.php | File | 4.73 KB | 0664 |
|
| RangeValidator.php | File | 7.21 KB | 0664 |
|
| Regex.php | File | 3.92 KB | 0664 |
|
| RegexValidator.php | File | 1.71 KB | 0664 |
|
| Required.php | File | 431 B | 0664 |
|
| Sequentially.php | File | 1.35 KB | 0664 |
|
| SequentiallyValidator.php | File | 1.18 KB | 0664 |
|
| Time.php | File | 1.5 KB | 0664 |
|
| TimeValidator.php | File | 2.21 KB | 0664 |
|
| Timezone.php | File | 3.24 KB | 0664 |
|
| TimezoneValidator.php | File | 3.76 KB | 0664 |
|
| Traverse.php | File | 1.1 KB | 0664 |
|
| Type.php | File | 1.6 KB | 0664 |
|
| TypeValidator.php | File | 2.92 KB | 0664 |
|
| Ulid.php | File | 1.56 KB | 0664 |
|
| UlidValidator.php | File | 2.37 KB | 0664 |
|
| Unique.php | File | 1.96 KB | 0664 |
|
| UniqueValidator.php | File | 2.46 KB | 0664 |
|
| Url.php | File | 1.97 KB | 0664 |
|
| UrlValidator.php | File | 4.81 KB | 0664 |
|
| Uuid.php | File | 3.92 KB | 0664 |
|
| UuidValidator.php | File | 8.5 KB | 0664 |
|
| Valid.php | File | 1.29 KB | 0664 |
|
| ValidValidator.php | File | 1.02 KB | 0664 |
|
| When.php | File | 2.23 KB | 0664 |
|
| WhenValidator.php | File | 1.72 KB | 0664 |
|
| ZeroComparisonConstraintTrait.php | File | 1.23 KB | 0664 |
|