Maison >développement back-end >tutoriel php >Comment envoyer du courrier HTML avec des images intégrées en utilisant PHP et PHPMAILER ?

Comment envoyer du courrier HTML avec des images intégrées en utilisant PHP et PHPMAILER ?

王林
王林original
2023-07-22 11:29:061322parcourir

Comment envoyer un e-mail HTML avec des images intégrées en utilisant PHP et PHPMAILER ?

L'e-mail HTML est un formulaire de courrier électronique plus riche et plus personnalisé qui peut insérer des images, des liens et des styles dans l'e-mail. Les images intégrées font référence à l'envoi d'images directement dans le cadre de l'e-mail HTML au lieu de les envoyer sous forme de pièces jointes.

En PHP, nous pouvons utiliser PHPMAILER pour envoyer des e-mails HTML avec des images intégrées. PHPMAILER est une puissante bibliothèque d'envoi d'e-mails PHP qui peut facilement envoyer différents types d'e-mails.

Ce qui suit est un exemple de code qui utilise PHPMAILER pour envoyer des e-mails HTML avec des images intégrées :

<?php
require 'PHPMailer/PHPMailerAutoload.php';
 
// 创建一个新的PHPMailer对象
$mail = new PHPMailer;
 
// 配置邮件服务器信息
$mail->isSMTP();                                      // 设置邮件使用SMTP
$mail->Host = 'smtp.example.com';                     // 邮件服务器地址
$mail->SMTPAuth = true;                               // 启用SMTP身份验证
$mail->Username = 'your-email@example.com';            // SMTP用户名
$mail->Password = 'password';                         // SMTP密码
$mail->SMTPSecure = 'tls';                            // 启用TLS加密
$mail->Port = 587;                                    // 邮件服务器端口号
 
// 配置发件人信息
$mail->setFrom('your-email@example.com', 'Your Name');  // 发件人邮箱和名称
 
// 配置收件人信息
$mail->addAddress('recipient@example.com', 'Recipient Name');  // 收件人邮箱和名称
 
// 配置邮件内容
$mail->Subject = 'My HTML Email';                       // 邮件主题
$mail->isHTML(true);                                    // 设置邮件内容为HTML格式
 
// 邮件内容中的HTML代码,包含一个内嵌图片
$mail->Body = '
    <h1>Hello, World!</h1>
    <p>This is an HTML email with embedded image.</p>
    <p><img src="cid:logo" alt="Logo"></p>
';
 
// 为内嵌图片添加附件
$mail->AddEmbeddedImage('path/to/image.jpg', 'logo');   // 图片路径和名称
 
// 发送邮件
if($mail->send()) {
    echo '邮件发送成功';
} else {
    echo '邮件发送失败:' . $mail->ErrorInfo;
}

Dans l'exemple de code ci-dessus, nous avons d'abord introduit la bibliothèque de classes PHPMAILER via require et créé un nouveau PHPMailer objet. Ensuite, nous définissons les informations sur le serveur de messagerie, les informations sur l'expéditeur, les informations sur le destinataire et le contenu de l'e-mail en configurant les propriétés de l'objet $mail. require引入了PHPMAILER类库并创建了一个新的PHPMailer对象。然后,我们通过配置$mail对象的属性来设置邮件服务器信息、发件人信息、收件人信息和邮件内容。

在邮件内容中的HTML代码中,我们通过a1f02c36ba31691bcfe87b2722de723b标签的src属性来引用内嵌图片,并通过cid:logo来标识该图片。然后,我们使用$mail->AddEmbeddedImage()方法将真实的图片文件添加为内嵌图片附件,其中第一个参数是图片路径和名称,第二个参数是cid标识符,需要和邮件内容中的对应上。

最后,我们使用$mail->send()方法发送邮件,并根据发送结果输出相应的消息。

总结:
使用PHP和PHPMAILER发送带有内嵌图片的HTML邮件相对简单,我们只需要通过AddEmbeddedImage()方法添加内嵌图片附件,并在邮件内容中使用对应的cid

Dans le code HTML du contenu de l'e-mail, nous référençons l'image intégrée via l'attribut src de la balise a1f02c36ba31691bcfe87b2722de723b, et passons le cid : logo pour identifier l'image. Ensuite, nous utilisons la méthode $mail->AddEmbeddedImage() pour ajouter le fichier image réel en tant que pièce jointe d'image intégrée, où le premier paramètre est le chemin et le nom de l'image, et le deuxième paramètre est cid doit correspondre à celui présent dans le contenu de l'e-mail. 🎜🎜Enfin, nous utilisons la méthode $mail->send() pour envoyer l'e-mail et afficher le message correspondant en fonction du résultat de l'envoi. 🎜🎜Résumé :
L'envoi d'e-mails HTML avec des images intégrées à l'aide de PHP et PHPMAILER est relativement simple. Il suffit d'ajouter des pièces jointes d'images intégrées via la méthode AddEmbeddedImage() et de l'utiliser dans le contenu de l'e-mail. L'identifiant cid correspondant est suffisant. En utilisant PHPMAILER, nous pouvons facilement créer des e-mails HTML plus riches et plus personnalisés, améliorant ainsi l'attractivité et l'efficacité des e-mails. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn