Я собирался добавить комментарий к вашему вопросу, но у меня там не было достаточно места, чтобы отформатировать и привести пример.
Вот идея, которая, по моему мнению, может сработать:
1 - Загрузить все электронные письма, которые вы хотите отправить в базу данных или файл.
2 - В вашем веб-приложении нажмите на кнопку, чтобы отправить электронную почту. Это отправит запрос Ajax на сервер. Вы можете определить количество писем, которые вы хотите отправить в течение определенного периода времени. Помните, что у большинства хостов есть ограничения на количество писем, которые вы можете отправлять каждый час.
3 - создайте скрипт php, который будет получать запрос Ajax и отправлять все электронные письма в соответствии с заданными вами параметрами.
4 - Я полагаю, что вы можете убить свой веб-браузер, потому что PHP-скрипт будет проходить по всему списку и не вернется, пока не завершит отправку всех электронных писем.
Вышесказанное может сработать, однако я бы никогда так не поступил. Я бы использовал cronjob, как указано выше. Ваш cronjob должен будет только проверить, есть ли электронные письма для отправки или нет. Это не ресурсоемкий.
Если вы решили реализовать идеи, изложенные выше, пожалуйста, сообщите нам об этом. Мне любопытно, сработает ли это.
Удачи!