Enviar e-mails em lote

Enviada por Xavier 
Xavier
Enviar e-mails em lote
27 de July de 2018 às 01:39PM
Olá pessoal!

Eu gostaria de enviar um arquivo para vários contatos (e-mails) ao mesmo tempo.

Eu quero selecionar um arquivo e deixo pre-selecionado, então carrego uma lista de e-mails os quais estão em um arquivo txt e envio o arquivo pre-selecionado para os devidos e-mails. Tipo SendBlaster.

Eu sei enviar um arquivo para o e-mail do cliente, sem problema algum. No caso, preciso enviar para uma lista de e-mails de um arquivo.txt

Se alguém puder me dar uma luz eu agradeço.
Trambulhao
Re: Enviar e-mails em lote
28 de July de 2018 às 03:45AM
http://php.net/manual/en/function.mail.php

// e-mals separados com vírgula
$para = 'user-1@server.com, user-2@server.com, user-3@server.com, user-4@server.com';
mail($para, $assunto, $mensagem);

Como é a estrutura do TXT? Um e-mail embaixo do outro? separador por vírgula?
Xavier
Re: Enviar e-mails em lote
28 de July de 2018 às 03:43PM
Salve, salve Trambulhão!

Sim, o arquivo é um bloco de notas tipo: lista-1.txt e está desta forma um embaixo do outro:

aaaaaa@gmail.com;
bbbbbb@hotmail.com;
cccccc@yahoo.com.br;
dddddd@gmail.com;
eeeee@outlook.com.br;
Trambulhao
Re: Enviar e-mails em lote
29 de July de 2018 às 10:34AM
function formartFileAddress($file)
{
// verifica se o arquivo existe e pode ser lido
if (is_readable($file)) {
// Pega os e-mails e joga num array
$emails = file($file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
// limpa os ";" pontos-e-vírgulas
$emails = str_replace(';', '', $emails);
// retornar os e-mails separados por vírgula
return implode(', ', $emails);
}

return null;
}

$fileEmails = 'arquivo-dos-emails.txt';
$to = formartFileAddress($fileEmails);

echo $to;
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.