/** * {@inheritdoc} * @throws InvalidArgumentException если значение не в списке. */ public function setValue($value) { $values = (array) $value; foreach ($values as $item) { $item = $this->filter($item); if (!isset($this->getChoices()[$item])) { throw new InvalidArgumentException(sprintf('Value "%s" is not in available values list.', $value)); } } return parent::setValue($value); }