у меня есть users
таблица в моей базе данных. Там выше 50000 адресов электронной почты. Я хочу отправить письмо всем одновременно. я использую while
петля. Но мой браузер зависает при отправке почты. Как отправить письмо всем пользователям?
Код:
$qryUserEmail = mysql_query("SELECT username,email FROM users WHERE is_active=1");
if(mysql_num_rows($qryUserEmail)){ //I got 50624 email addresses.
while($getUserEmail = mysql_fetch_array($qryUserEmail)){
//Sending Email code Here...
}
}
Я не знаю о background-process
код. Если кто-нибудь знает, пожалуйста, оставьте свой ответ здесь. Как отправить электронное письмо, не тратя времени на мой связанный код?
Php должен иметь возможность запускать фоновые процессы, но я не знаю много об этом.
Я бы предложил, чтобы вы представили своего рода работника в очереди и фоновом режиме, который может отправлять электронную почту без прямого взаимодействия с пользователем.
Поэтому, когда пользователь нажимает кнопку «отправить», задание добавляется в очередь, и время от времени обрабатываются задания в очереди (например, задание cron или подобное).
Другой альтернативой является оплата за услугу, такую как рассылка или mailchimp.
set_time_limit()
а также ini_set('max_execution_time')
увеличить время исполнения.Вы можете запустить файл .PHP из скрипта оболочки (или что-то вроде crontab) или браузера.
Нет необходимости использовать функцию обратного вызова или что-то еще.
Разместите свою электронную почту, отправьте в свое время или используйте CC и BCC.