Ich folgte PHPMailer Tutorial und einige Tutorials im Internet, aber ich kann immer noch nicht Ausführung weniger als 2 Sekunden. Auf vielen Webseiten heißt es, es sollte nicht mehr als 0,4s dauern. Ich habe es von meinem lokalen Rechner und von AWS ausprobiert. Ausführungszeit gleich.PHPMailer Ausführung etwa 2 Sekunden
class BatchMailer {
private static $mail;
private static $initialized = false;
private static function initialize() {
if (self::$initialized)
return;
self::$mail = new PHPMailer;
self::$mail->SMTPDebug = 2;
self::$mail->isSMTP();
self::$mail->Host = 'smtp.gmail.com';
self::$mail->Port = 587;
self::$mail->SMTPSecure = 'tls';
self::$mail->SMTPAuth = true;
self::$mail->Username = '***';
self::$mail->Password = '***';
self::$mail->SMTPKeepAlive = true;
self::$mail->setFrom('***@gmail.com', 'Title');
self::$mail->isHTML(true);
self::$mail->AltBody = 'Please use an HTML-enabled email client to view this message.';
self::$initialized = true;
}
public static function setSubject($subject) {
self::initialize();
self::$mail->Subject = $subject;
}
public static function setBody($body) {
self::initialize();
self::$mail->Body = stripslashes($body);
}
public static function sendTo() {
self::initialize();
self::$mail->clearAddresses();
$recipients = array(
'***@gmail.com' => 'Person One'
);
foreach($recipients as $email => $name) {
self::$mail->AddCC($email, $name);
}
self::$mail->send();
return;
}
static function test() {
self::setSubject('subject');
self::setBody('body');
self::sendTo();
}
}
Vielen Dank für Ihre Antwort. Können Sie lokale Mail-Server vorschlagen, die ich mit PHP verwenden kann? – user256968
Jeder wird tun, aber Postfix ist wahrscheinlich am einfachsten einzurichten. Andere sind Exim, Sendmail, Haraka, qmail. – Synchro
Ich habe sendgrid Mail-Dienst verwendet, sie bieten eine SMTP-API, die die E-Mail als API-Aufruf sendet sie auch die php sdk dafür bereitgestellt haben! probier es aus, fühlte, dass es ziemlich schnell war. https://sendgrid.com/docs/Integrate/Code_Examples/v2_Mail/php.html – BlackBurn027