@
, то это не корректный Email и это должно обрабатываться по другомуif (false === \filter_var($value, FILTER_VALIDATE_EMAIL)) {
new InvalidArgumentException('Expected a value to be a valid e-mail address');
}
$parts = explode('@', $this->getValue());
будет только валидный email, который можно разбить на 2 части. В код не должны попадать данные, которых вы не ожидате.