Heim >Backend-Entwicklung >PHP-Tutorial >So versenden Sie E-Mails mit PHP unter Verwendung des SMTP-Protokolls und TLS-Verschlüsselung

So versenden Sie E-Mails mit PHP unter Verwendung des SMTP-Protokolls und TLS-Verschlüsselung

王林
王林Original
2023-05-22 08:23:062199Durchsuche

Mit der kontinuierlichen Entwicklung des Internets ist E-Mail zu einem wichtigen Kommunikationsmittel im täglichen Arbeits- und Alltagsleben der Menschen geworden. Bei der Netzwerkentwicklung müssen wir häufig Code verwenden, um E-Mails für Benachrichtigungen, Erinnerungen usw. an Benutzer oder andere Systeme zu senden. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Sprache E-Mails über das SMTP-Protokoll und die TLS-Verschlüsselung senden.

1. Einführung in das SMTP-Protokoll

Der vollständige Name von SMTP ist ein Netzwerkprotokoll, das für die E-Mail-Übertragung verwendet wird.

Beim Versenden von E-Mails über das SMTP-Protokoll müssen Sie die Adresse, den Port, den Benutzernamen, das Passwort und andere Informationen des SMTP-Servers verwenden. Die Adresse des SMTP-Servers wird im Allgemeinen vom E-Mail-Anbieter bereitgestellt und die Portnummer ist im Allgemeinen 25. Wenn Sie E-Mails verschlüsselt versenden müssen, müssen Sie die SSL-Verschlüsselung oder TLS-Verschlüsselungsmethode des SMTP-Servers verwenden.

2. Einführung in die TLS-Verschlüsselungsmethode

TLS steht für Transport Layer Security (Transportschichtsicherheit). Es ist ein häufig verwendetes verschlüsseltes Kommunikationsprotokoll, das zum Schutz der Sicherheit der Netzwerkkommunikation verwendet wird.

Beim Senden von E-Mails mit TLS-Verschlüsselung sendet der SMTP-Server das Verschlüsselungszertifikat an den Client. Nachdem der Client die Überprüfung bestanden hat, verwendet er die Verschlüsselung mit öffentlichem Schlüssel, um die E-Mail-Informationen an den SMTP-Server zu senden.

3. Vorbereitung für den E-Mail-Versand mit PHP

Wenn Sie PHP zum Versenden von E-Mails verwenden, müssen Sie die folgenden Informationen vorbereiten:

  1. SMTP-Serveradresse und Portnummer
  2. E-Mail-Adresse und Passwort des Absenders
  3. Empfangen Sie Informationen wie die E-Mail-Adresse, E-Mail-Betreff und Inhalt

4. Schritte zum Versenden von E-Mails mit PHP

Nachdem wir die oben genannten Informationen vorbereitet haben, können wir den E-Mail-Versand über PHP-Code abschließen. Im Folgenden finden Sie die Details zum Versenden von E-Mails mit PHP-Schritten:

  1. SMTP-Serverinformationen festlegen

In PHP können Sie die Klasse „PHPMailer“ verwenden, um das SMTP-Protokoll und den TLS-verschlüsselten E-Mail-Versand zu implementieren. Zuerst müssen Sie die SMTP-Serveradresse, die Portnummer, die TLS-Verschlüsselungsmethode und andere Informationen festlegen. Der Code lautet wie folgt:

$mail = new PHPMailer();
$mail->isSMTP();
$mail->SMTPDebug = 2;                                 
$mail->SMTPAuth = true;                              
$mail->SMTPSecure = 'tls';                           
$mail->Host = 'smtp.gmail.com';  
$mail->Port = 587;                                    

In diesen Codes verwenden wir die SMTP-Serveradresse als „smtp.gmail.com“. Die Portnummer ist 587 und SMTPSecure Der Parameter ist auf „tls“ gesetzt, was bedeutet, dass zum Senden von E-Mails TLS-Verschlüsselung verwendet wird.

  1. Legen Sie die Absenderinformationen fest

    Als nächstes müssen Sie die E-Mail-Adresse und das Passwort des Absenders festlegen. Der Code lautet wie folgt:

$mail->Username = 'youremail@gmail.com'; 
$mail->Password = 'yourpassword';   
$mail->setFrom('youremail@gmail.com', 'Your Name');
  1. Legen Sie die Empfängerinformationen fest

Als nächstes müssen Sie den Empfänger festlegen Für die E-Mail-Person, den Betreff, den Text und andere Informationen lautet der Code wie folgt:

$mail->addAddress('recipient1@example.com', 'Recipient Name');
$mail->addAddress('recipient2@example.com');
$mail->addReplyTo('info@example.com', 'Information');
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');
$mail->Subject = 'The Paper Airplane Contest';
$mail->Body    = 'Dear Recipient, <br><br> Are you ready for the upcoming paper airplane contest?';
$mail->AltBody = 'Dear Recipient, Are you ready for the upcoming paper airplane contest?';

In diesen Codes verwenden wir die Funktion addAddress(), um die Empfängeradresse hinzuzufügen, und die Funktion setFrom(), um die Absenderadresse festzulegen sowie die Funktionen addCC() und addBCC() zum Festlegen der CC- und BCC-Adressen.

  1. E-Mails senden

Abschließend müssen Sie die Funktion send() verwenden, um E-Mails zu senden. Der vollständige Code lautet wie folgt:

$mail = new PHPMailer();
$mail->isSMTP();
$mail->SMTPDebug = 2;                                 
$mail->SMTPAuth = true;                              
$mail->SMTPSecure = 'tls';                           
$mail->Host = 'smtp.gmail.com';  
$mail->Port = 587;                                    
$mail->Username = 'youremail@gmail.com'; 
$mail->Password = 'yourpassword';   
$mail->setFrom('youremail@gmail.com', 'Your Name');
$mail->addAddress('recipient1@example.com', 'Recipient Name');
$mail->addAddress('recipient2@example.com');
$mail->addReplyTo('info@example.com', 'Information');
$mail->addCC('cc@example.com');
$mail->addBCC('bcc@example.com');
$mail->Subject = 'The Paper Airplane Contest';
$mail->Body    = 'Dear Recipient, <br><br> Are you ready for the upcoming paper airplane contest?';
$mail->AltBody = 'Dear Recipient, Are you ready for the upcoming paper airplane contest?';
if(!$mail->send()) {
    echo 'Message could not be sent.';
    echo 'Mailer Error: ' . $mail->ErrorInfo;
} else {
    echo 'Message has been sent';
}

5. Zusammenfassung

In diesem Artikel wird erläutert, wie Sie E-Mails mithilfe der PHP-Sprache senden SMTP-Protokoll und TLS-Verschlüsselung. Wenn Sie E-Mails auf diese Weise senden, müssen Sie die Adresse und Portnummer des SMTP-Servers, die E-Mail-Adresse und das Passwort des Absenders, die E-Mail-Adresse des Empfängers, den Betreff und den Inhalt der E-Mail usw. vorbereiten und diese Informationen über PHP festlegen Code Verwenden Sie abschließend die Funktion send(), um die E-Mail zu senden.

Das obige ist der detaillierte Inhalt vonSo versenden Sie E-Mails mit PHP unter Verwendung des SMTP-Protokolls und TLS-Verschlüsselung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn