С php mail () я могу написать
mail('to@example.com','subject!','body','From: from@example.com','-f from@example.com');
Но как я могу сделать то же самое с phpmailer?
Этот пример показывает, как.
соответствующие строки:
$mail->SetFrom('name@yourdomain.com', 'First Last'); $mail->AddReplyTo('name@yourdomain.com', 'First Last');
Соответствующая строка в ответе Theolodis:
$mail->SetFrom('name@yourdomain.com', 'First Last');
Нет необходимости использовать AddReplyTo()
это совсем другое.
Вам нужно только установить свой адрес (и имя необязательно) с помощью SetFrom()
. Если вы посмотрите на код , SetFrom()
принимает три параметра:
/** * Set the From and FromName properties * @param string $address * @param string $name * @param boolean $auto Whether to also set the Sender address, defaults to true * @throws phpmailerException * @return boolean */ public function SetFrom($address, $name = '', $auto = true) { ....
третий параметр (по умолчанию – true), и поэтому отправитель конверта получает тот же адрес, что и отправитель.
Интересно, если вы хотите установить разные адреса в качестве отправителя конверта и From Address. Это способ, как ИЗМЕНИТЬ отправителя конверта. Поэтому вам нужно установить свойство $sender
вашего экземпляра PHPMailer
следующим образом:
$pMail->Sender='admin@yourdomain.com'; $pMail->SetFrom('name@yourdomain.com', 'First Last', FALSE);
Что сработало для меня (неясно), используя
$mail->SetFrom('name@yourdomain.com', 'Rupert Bear');
должен был использовать localhost, а не напрямую обращаться к SMTP-серверу, например
$email->Host='localhost'; // SMTP server this way you get from name (don't know why)
Теперь письма отправляются в Outlook из «Руперта Медведя» [name@yourdomain.com]
Флаг -f устанавливается с помощью $ email-> Sender
Это конверт, из которого позволяет почтовый сервер оценивать адрес электронной почты отправителя до получения остальной части ваших данных электронной почты
SetFrom – это тот адрес электронной почты, который конечный пользователь увидит в качестве сообщения, поступающего от
AddReplyTo – это то, что адрес электронной почты будет всплывать, если они ответят на письмо
Отправитель должен быть чистым для передачи спам-фильтров
SetFrom должен быть чистым для передачи спам-фильтров
AddReplyTo не имеет большого значения. Это позволяет службе отправлять электронное письмо от имени пользователя с адресом электронной почты, который не управляется службой.