Отправка большого электронного письма в PHP

Я хочу отправить почту на сотни адресов электронной почты в PHP, используя функцию php mail. Как я могу это сделать?

Вы также можете использовать SwiftMailer

Также посмотрите на аналогичную запись здесь

Вы можете попробовать phplist

Это будет лучший вариант

Я бы не стал писать собственную рассылку, если у вас много времени. Существует множество вопросов для охвата, включая дросселирование электронных писем, отправку электронных писем на небольшие партии, поэтому AOL и другие поставщики услуг не считают ваш сервер СПАММИНГОМ. Кроме того, вы хотите, вероятно, включить отслеживание открытых электронных писем, отслеживать отсканированные электронные письма, ссылки на клики и т. Д.

Я бы посмотрел на некоторые варианты с открытым исходным кодом, такие как http://www.phplist.com, которая является очень хорошей программой с открытым исходным кодом для массовых электронных писем.

Или на коммерческой стороне взгляните на Interspire Email Markerer, это очень гладкий продукт и стоит денег, плюс вы можете разместить его на своих серверах.

http://www.interspire.com/emailmarketer/

Вы должны использовать PHP? Если это так, я бы использовал PHPMailer, у меня был некоторый опыт работы с ним, и он не подвел меня для массовой отправки по электронной почте.

В качестве альтернативы, если у вас есть доступ к серверу, посмотрите на использование Postfix или Sendmail, они лучше подходят для такого количества почты.

Если вы отправляете много писем, вы не хотите делать все это один раз, иначе вы будете потреблять слишком много ресурсов.

Вот учебник о том, как использовать компонент Mail_Queue библиотеки PEAR: http://pear.php.net/manual/en/package.mail.mail-queue.mail-queue.tutorial.php

Он в основном будет поэтапно отправлять сегменты вашего почтового ящика без дросселирования вашего сервера.

Используйте библиотеку PHPMailer, у нее много функциональности. Храните адреса электронной почты в виде массива, и для цикла loop просто добавьте каждый адрес электронной почты в виде строки в поле mail-> AddAddress. Он позаботится о отправке массовой почты. Я использовал это только для отправки массовых писем по 6/7 адресов за раз. Он также должен работать на сотни адресов.

Вы можете использовать swiftmailer для этого. Используя пакетный процесс.

<?php $message = Swift_Message::newInstance() ->setSubject('Let\'s get together today.') ->setFrom(array('myfrom@domain.com' => 'From Me')) ->setBody('Here is the message itself') ->addPart('<b>Test message being sent!!</b>', 'text/html') ; $data = mysql_query('SELECT first, last, email FROM users WHERE is_active=1') or die(mysql_error()); while($row = mysql_fetch_assoc($data)) { $message->addTo($row['email'], $row['first'] . ' ' . $row['last']); } $message->batchSend(); ?>