Я создаю валидатор адресов электронной почты ZF2 через фабрику, которая имеет 2 части, одна проверяет, находится ли emaill в БД, два: проверьте электронную почту. Прблема заключается в том, что мой валидатор NoObjectExists работает очень хорошо, но акатальный валидатор адресов электронной почты не выполняет (валидатор распознает «dsfsfhsadjkfnaskl» как действительный адрес электронной почты). Вот мой код, может быть, вы, ребята, можете определить, что с ним не так?ZF2 EmailAddress validator
$factory = new \Zend\InputFilter\Factory();
$input = $factory->createInput(array(
'name' => 'email',
'required' => false,
'filters' => array(
0 => array(
'name' => 'Zend\Filter\StringTrim',
'options' => array(),
),
),
'validators' => array(
0 => array(
'name' => '\DoctrineModule\Validator\NoObjectExists',
'options' => array(
'object_repository' => $this,
'fields' => array('email'),
),
1 => array(
'name' => '\Zend\Validator\EmailAddress',
'options' => array(
'allow' => \Zend\Validator\Hostname::ALLOW_DNS,
'domain' => true,
),
),
),
),
));
return $input;
Я на самом деле пытался дать несколько советов, и я положил драгоценное время при добавлении ответа на ваш вопрос. Мой ответ действительно получил одобрение кого-то другого, что означало, что это считалось полезным другим. Вместо того, чтобы выразить некоторую признательность и поблагодарить меня, вы вместо этого решили понизить мой ответ. Не очень уважительное отношение к ИМО. Ваш вопрос на самом деле не применим к [StackOverflow mcve] (https://stackoverflow.com/help/mcve), и вы должны быть счастливы, люди даже читают его. Я удалил свой ответ, поэтому вы получили то, что хотели, но не ожидаете от меня никакой помощи в будущем. Хорошего дня! – Wilt