Heim  >  Artikel  >  Backend-Entwicklung  >  Wie versende ich HTML-Mails mit Bildern mit PHP und PHPMAILER?

Wie versende ich HTML-Mails mit Bildern mit PHP und PHPMAILER?

WBOY
WBOYOriginal
2023-07-21 09:21:291723Durchsuche

Wie versende ich HTML-E-Mails mit Bildern mit PHP und PHPMailer?

E-Mail spielt in der modernen Kommunikation eine wichtige Rolle, aber das Versenden von HTML-E-Mails mit Bildern kann einige PHP-Entwickler verwirren. In diesem Artikel stellen wir vor, wie Sie PHP und PHPMailer zum Versenden von HTML-E-Mails mit Bildern verwenden. Wir stellen Ihnen Codebeispiele zur Verfügung, damit Sie besser verstehen, wie Sie dies erreichen.

Zuerst müssen wir sicherstellen, dass die PHPMailer-Bibliothek in unserem Projekt installiert ist. Sie können es installieren, indem Sie den folgenden Code zu Ihrer Composer.json-Datei hinzufügen:

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

Sobald die PHPMailer-Bibliothek installiert ist, können wir mit dem Schreiben des Codes zum Versenden von HTML-E-Mails mit Bildern beginnen.

use PHPMailerPHPMailerPHPMailer;
use PHPMailerPHPMailerException;

require 'vendor/autoload.php';

// 实例化PHPMailer对象
$mail = new PHPMailer(true);

try {
    // 服务器设置与身份验证
    $mail->SMTPDebug = 0;                                 // 0 = 关闭调试输出
    $mail->isSMTP();                                      // 通过SMTP发送
    $mail->Host = 'smtp.example.com';                     // 设置SMTP服务器
    $mail->SMTPAuth = true;                               // 启用SMTP身份验证
    $mail->Username = 'your-email@example.com';           // 您的邮箱用户名
    $mail->Password = 'your-email-password';              // 您的邮箱密码
    $mail->SMTPSecure = 'tls';                            // 启用TLS加密,可选
    $mail->Port = 587;                                    // 设置SMTP端口号

    // 发件人与收件人设置
    $mail->setFrom('your-email@example.com', 'Your Name');        // 发件人邮箱和姓名
    $mail->addAddress('recipient@example.com', 'Recipient Name'); // 收件人邮箱和姓名

    // 邮件内容设置
    $mail->isHTML(true);                                   // 将邮件格式设置为HTML
    $mail->Subject = '这是一封带有图片的HTML邮件';             // 邮件主题

    // 邮件正文
    $mail->Body = '<h1>Hello World!</h1>
                   <p>这是一封带有图片的HTML邮件。<br>
                   图片示例:<br>
                   <img src="cid:image1" alt="Image" width="200px"></p>';

    // 附件-图片
    $mail->AddEmbeddedImage('/path/to/image.jpg', 'image1');   // 替换"image1"为您要嵌入的图片cid

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

Das obige Codebeispiel zeigt, wie Sie mit der PHPMailer-Bibliothek eine HTML-E-Mail mit einem Bild senden. Wir instanziieren zunächst das PHPMailer-Objekt und legen den SMTP-Server und die Authentifizierungsinformationen im Objekt fest. Als nächstes legen wir die Absender- und Empfängerinformationen fest.

Beim Festlegen des E-Mail-Inhalts setzen wir die Methode isHTML auf true, um das E-Mail-Format als HTML anzugeben. Wir legen auch den Betreff und den Text der E-Mail fest. Im Textkörper verwenden wir HTML-Markup, um eine einfache HTML-Seite zu erstellen, die ein eingebettetes Bild enthält. Das Attribut src des Tags a1f02c36ba31691bcfe87b2722de723b wird auf cid:image1 gesetzt, damit das Bild auch in die E-Mail eingebettet wird. isHTML方法设置为true,以指定邮件格式为HTML。我们还设置了邮件主题和正文。在正文中,我们使用HTML标记来创建一个简单的HTML页面,其中包含一张嵌入的图片。a1f02c36ba31691bcfe87b2722de723b标签的src属性被设置为cid:image1,这样将图片同时嵌入到邮件中。

最后,我们使用AddEmbeddedImage方法将图片附加到邮件中,并为图片提供一个唯一的cid。请确保替换示例代码中的路径和图片cid为您自己的信息。

一旦所有设置完成,我们调用send

Schließlich verwenden wir die Methode AddEmbeddedImage, um das Bild an die E-Mail anzuhängen und dem Bild eine eindeutige CID zu geben. Bitte stellen Sie sicher, dass Sie den Pfad und die Bild-ID im Beispielcode durch Ihre eigenen Informationen ersetzen.

Sobald alle Einstellungen abgeschlossen sind, rufen wir die Methode send auf, um die E-Mail zu versenden. Nach erfolgreichem Versand wird die Meldung „E-Mail erfolgreich gesendet!“ ausgegeben, bei fehlgeschlagenem Versand werden spezifische Fehlerinformationen ausgegeben. 🎜🎜Ich hoffe, dieser Artikel kann Ihnen beim Versenden von HTML-E-Mails mit Bildern mit PHP und PHPMailer helfen. Auf diese Weise können Sie Ihren Empfängern reichhaltigere und vielfältigere E-Mail-Inhalte senden. 🎜

Das obige ist der detaillierte Inhalt vonWie versende ich HTML-Mails mit Bildern mit PHP und PHPMAILER?. 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