Aktueller Standort: Startseite> Neueste Artikel> Wie sende ich HTML -Mails mit Bildern mit PHP und PHPMailer?

Wie sende ich HTML -Mails mit Bildern mit PHP und PHPMailer?

M66 2025-05-30

Vollständige Schritte zum Senden von Text HTML -Mail mit Phpmailer

E -Mail bleibt ein wesentlicher Bestandteil der Netzwerkkommunikation, und HTML -Mails in Kombination mit Grafiken und Text werden immer beliebter. In diesem Artikel wird Ihnen erklärt, wie Sie die Phpmailer -Bibliothek verwenden, um HTML -E -Mails mit eingebetteten Bildern in PHP zu senden.

Installieren Sie die Phpmailer -Bibliothek

Stellen Sie zunächst sicher, dass Phpmailer bereits im Projekt installiert ist. Sie können Composer verwenden, um es zu installieren. Fügen Sie einfach die folgenden Abhängigkeiten in composer.json des Projektroot -Verzeichnisses hinzu:

 
"require": {
    "phpmailer/phpmailer": "~6.0"
}

Nach Abschluss der Installation wird Phpmailer automatisch geladen und kann direkt verwiesen und verwendet werden.

Schreiben Sie PHP -Code, um grafische HTML -Mails zu senden

Hier finden Sie einen vollständigen Beispielcode, der zeigt, wie Sie den SMTP -Server konfigurieren, den E -Mail -Inhalt einrichten und das Bild einbetten:

 
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {
    // Servereinstellungen und Authentifizierung
    $mail->SMTPDebug = 0; 
    $mail->isSMTP();
    $mail->Host = 'smtp.example.com';
    $mail->SMTPAuth = true;
    $mail->Username = 'your-email@example.com';
    $mail->Password = 'your-email-password';
    $mail->SMTPSecure = 'tls';
    $mail->Port = 587;

    // Absender und Empfänger
    $mail->setFrom('your-email@example.com', 'Your Name');
    $mail->addAddress('recipient@example.com', 'Recipient Name');

    // E -Mail -Inhalt
    $mail->isHTML(true);
    $mail->Subject = 'Dies ist ein BildHTMLPost';
    $mail->Body = '
        <h1>Hello World!</h1>
        <p>Dies ist ein BildHTMLPost。<br>
        Bildbeispiel:<br>
        <img src="cid:image1" alt="Image" style="max-width:90%">
        </p>';

    // Lokale Bilder einbetten
    $mail->AddEmbeddedImage('/path/to/image.jpg', 'image1');

    // 发送Post
    $mail->send();
    echo 'Post发送成功!';
} catch (Exception $e) {
    echo 'Post发送失败:' . $mail->ErrorInfo;
}

Code analysieren

Der obige Code zeigt den Prozess des Sendens von HTML-formatierten E-Mails:

  • Der SMTP -Konfigurationsteil legt die Adresse, Port, Authentifizierungsinformationen usw. des Mailservers fest.
  • Schalten Sie den HTML -Formatunterstützung über isHTML(true) -Methode ein, um die HTML -Tags von E -Mail -Körper zu unterstützen.
  • Verwenden Sie AddEmbeddedImage -Methode, um das lokale Bild einzubetten und es in HTML zu verweisen, indem Sie cid -Wert einstellen.
  • Verwenden Sie <img src="cid:image1"> -Tags im E -Mail -Körper, um eingebettete Bilder anzuzeigen.

Hinweise zum Senden von Grafik- und Text -E -Mails

Achten Sie beim Senden von Grafik- und Text -E -Mails bitte auf die folgenden Punkte:

  • Stellen Sie sicher, dass der Bildpfad korrekt ist und der Server Berechtigungen gelesen hat.
  • Jedes eingebettete Bild muss ein einzigartiges CID haben und in HTML verwendet werden.
  • Verwenden Sie die reale SMTP -Serveradresse und das Kontokennwort zum Testen.

Zusammenfassen

Durch die Kombination von PHP mit PHPMailer können Entwickler die Funktion zum Senden von HTML -E -Mails mit Bildern und Texten schnell implementieren. Diese Methode verbessert nicht nur die visuelle Leistung von E -Mails, sondern verbessert auch die Lesequote und Professionalität von E -Mails. Befolgen Sie einfach die Schritte zum Konfigurieren von SMTP, schreiben Sie HTML -Inhalte und betten Sie Bilder richtig ein, um das Versenden von Mails mit Bildern und Texten zu erreichen.