Llevo tiempo dándole vueltas a un problema de optimización que tengo en mi base de datos, que no es que me inhabilite ninguna función de mis códigos pero que ademas de solucionarme este problema la solución me sirva para otras funciones que tengo en mente.
Y es que tengo una base de datos de unos 2500 emails recogidos de la antigua base de datos de mi web, he pasado todos esas direcciones a mi nueva base de datos para retomar el envío de newsletter a mis clientes hasta ai todo bien.
Pero la duda que me surge es que al tener unas 500 direcciones las cuales su servidor me responde que la dirección no existe o esta borrada, me gustaría eliminar para así optimizar mi base de datos.
Lo que utilizo son las funciones IMAP de php para listar todos los correos recibidos para así con foreach ir detectando las direcciones de correo que hay en cada correo.
De momento mi problema esta con la expresión regular de la función preg_match_all, esta función la he utilizado otras veces para detectar etiquetas <IMG> en correos y la verdad que me ha ido bien. Para probar estoy utilizando este código el cual pretendo que me devuelva un array con las direcciones de correos encontradas.
Código PHP:
<?
$texto="[email protected] es un correo de carlos. [email protected] también.";
preg_match_all("(^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$)", $texto, $coincidencias, PREG_SET_ORDER);
print_r($coincidencias);
?>
Gracias de antemano foreros