PHP: Пользовательские параметры для команды mail?


Я использую mstmp для отправки почты с разных учетных записей smtp. Используя почтовую команду PHP, он успешно отправляет почту из mstmp, используя учетную запись по умолчанию.

Однако я хочу, чтобы он позволял мне указывать, с какой учетной записи smtp отправлять. Используя mstmp, вы делаете это с помощью следующей команды: msmtp--account=svh, где svh - это учетная запись smtp, которую вы называете. Подробнее о msmtp можно найти здесь: msmtp sourceforce

Итак, каковы мои варианты, есть ли измененная почтовая команда, которая позволит мне использовать msmtp с использованием параметра --account? Должен ли я просто запустить команду оболочки с правами суперпользователя (не хочу этого делать).

Как бы вы справились с этим?

Author: ParoX, 2010-08-14

1 answers

Похоже, что в msmtp есть способ, с помощью которого вы можете определить конфигурацию для всей системы, чтобы www-данные могли фактически выполнить команду и получить нужные мне электронные письма. Люблю msmtp.

Редактировать: Вот моя быстрая и грязная функция, чтобы сделать то, что я хотел, если кому-то это понадобится позже. Я настоятельно рекомендую вам больше проверять ошибки.

function msmtp($To, $Subject, $Body, $Headers, $Account) {
    $Email = "To: $To\nSubject: $Subject\n$Headers\n\n$Body\n";
    exec("echo '$Email' | msmtp --account=$Account $To");
}

Это очень похоже на функцию PHP mail(), поэтому вы могли бы отправить электронное письмо в качестве stevejobs Биллу Гейтсу следующим образом, используя учетную запись msmtp "яблоко":

Msmtp("[email protected]", " Эй, пожалуйста, прочтите это", "Вы слишком богаты, отдайте мне все свои деньги", " От: [email protected]", " яблоко")

 2
Author: ParoX, 2010-08-14 05:20:43