У меня есть классическая платформа LAMP (Debian, Apache2, PHP5 и MySQL) на выделенном сервере.
Я слышал, PHPMailer может отправлять электронную почту без установки SMTP. Является ли PHPMailer лучшим выбором для этого?
У меня есть классическая платформа LAMP (Debian, Apache2, PHP5 и MySQL) на выделенном сервере.
Я слышал, PHPMailer может отправлять электронную почту без установки SMTP. Является ли PHPMailer лучшим выбором для этого?
Да, PHPMailer - очень хороший выбор.
Например, если вы хотите, вы можете использовать бесплатный SMTP-сервер googles (он как отправка из вашей учетной записи gmail.), или вы можете просто пропустить часть smtp и отправить ее как обычный вызов mail(), но с все правильные заголовки и т.д. Он предлагает множественные электронные письма, вложения.
Довольно легко настроить.
<?php
$mail = new PHPMailer(true);
//Send mail using gmail
if($send_using_gmail){
$mail->IsSMTP(); // telling the class to use SMTP
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "[email protected]"; // GMAIL username
$mail->Password = "your-gmail-password"; // GMAIL password
}
//Typical mail data
$mail->AddAddress($email, $name);
$mail->SetFrom($email_from, $name_from);
$mail->Subject = "My Subject";
$mail->Body = "Mail contents";
try{
$mail->Send();
echo "Success!";
} catch(Exception $e){
//Something went bad
echo "Fail - " . $mail->ErrorInfo;
}
?>
Без SMTP вы можете использовать функцию почты PHP: http://php.net/manual/en/function.mail.php
bool mail (string $to, string $subject, string $message [, string $дополнительные_headers [, string $дополнительные_параметры]])
Вы можете использовать phpmailer для отправки, используя функцию php mail() по умолчанию.
Я рекомендую не пытаться делать что-то вручную, используя функцию mail(), вместо этого используйте phpmailer и настройте его для использования mail().
Я хотел бы указать, что даже если вы не используете SMTP-соединение для отправки писем самостоятельно, функция mail() будет использовать либо SMTP-соединение, либо серверную программу sendmail, чтобы отправлять электронные письма в любом случае, так что он должен быть настроен для правильной работы.