Array ( [0] => myemail@domain.com [1] => mysecondemail@domain.com [2] => invalidEmail.com )
Обратите внимание, что третье значение массива является недопустимым форматом электронной почты.Как мне удалить его с помощью / создания функции?Мне нужно действительное письмо на implode("," the valid email) перед отправкой письма с использованием функции mail().
implode("," the valid email)
mail()
$valid = array_filter($emails, create_function('$s', 'return filter_var($s, FILTER_VALIDATE_EMAIL);'));
Или для PHP 5.3 +:
$valid = array_filter($emails, function ($s) { return filter_var($s, FILTER_VALIDATE_EMAIL); });
<?php $len=count($array); for ($i=0;$i<$len;$i++) if (preg_match('^[a-z0-9!#$%&*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+(?:[a-z]{2,4}|museum|travel)$/i',$array[$i])) echo $array[$i]; ?>
Базовое решение простое и не требует регулярных выражений
$isvalid = filter_var('myname@anydomain.com', FILTER_VALIDATE_EMAIL));
Но ...
Чтобы узнать больше о действующих адресах электронной почты, воспользуйтесь ссылками ниже.
Ссылка:
Вот несколько примеров:
Эти адреса не соответствуют стандарту RFC 5322 , но они все еще действительны.
Даже если вы подтвердите правильность некоторых адресов, ничто не может гарантировать, что ваш почтовый сервер их примет.