Maison > Article > développement back-end > Comment envoyer des e-mails HTML personnalisés en masse en utilisant PHP et PHPMAILER ?
Comment envoyer des e-mails HTML personnalisés en masse à l'aide de PHP et PHPMailer ?
Avec le développement d'Internet, le courrier électronique est devenu un élément indispensable de la vie quotidienne des gens. Dans le domaine des affaires, l'envoi d'informations personnalisées aux clients ou aux utilisateurs par courrier électronique est devenu un outil marketing courant. En utilisant PHP et la bibliothèque PHPMailer, nous pouvons facilement envoyer des e-mails HTML personnalisés en masse. Cet article explique comment utiliser PHP et PHPMailer pour réaliser cette fonction.
1. Préparation
Tout d'abord, nous devons télécharger et installer la bibliothèque PHPMailer. La dernière version peut être trouvée sur https://github.com/PHPMailer/PHPMailer. Après avoir décompressé le fichier de bibliothèque téléchargé, introduisez les fichiers PHPMailer.php
et SMTP.php
dans le dossier src
dans notre projet. src
文件夹中的 PHPMailer.php
和 SMTP.php
文件引入到我们的项目中。
在发送邮件之前,还需确保我们的PHP环境已配置好SMTP服务。需要在 php.ini
文件中找到下列配置项,并将其正确设置为可用的SMTP服务器信息:
SMTP = smtp.example.com smtp_port = 587 sendmail_from = from@example.com
以上仅是示例配置,需要根据实际情况进行修改。
二、实现代码逻辑
接下来,我们来编写PHP代码来实现批量个性化的HTML邮件发送功能。
首先,我们需要引入PHPMailer库,并创建一个新的PHPMailer对象。代码如下:
require 'path/to/PHPMailer.php'; require 'path/to/SMTP.php'; $mailer = new PHPMailerPHPMailerPHPMailer();
然后,我们需要配置SMTP服务器信息,并设置邮件发送人的邮箱和昵称:
$mailer->IsSMTP(); $mailer->Host = 'smtp.example.com'; $mailer->Port = 587; $mailer->SMTPAuth = true; $mailer->Username = 'your_email@example.com'; $mailer->Password = 'password'; $mailer->SetFrom('from@example.com', 'Your Name');
接下来,我们需要加载接收邮件的列表,并循环遍历每个接收者,为每个接收者添加相应的内容。这就是实现个性化的关键。示例代码如下:
$recipientList = [ ['email' => 'recipient1@example.com', 'name' => 'Recipient 1'], ['email' => 'recipient2@example.com', 'name' => 'Recipient 2'], // 添加更多接收者... ]; foreach ($recipientList as $recipient) { $mailer->AddAddress($recipient['email'], $recipient['name']); // 设置邮件内容 $mailer->Subject = 'Subject of the Email'; $mailer->Body = '<html><body><h1>Hello ' . $recipient['name'] . '</h1><p>This is the content of the email.</p></body></html>'; // 发送邮件 if (!$mailer->Send()) { echo 'Failed to send email to ' . $recipient['email'] . ': ' . $mailer->ErrorInfo . '<br>'; } else { echo 'Email sent to ' . $recipient['email'] . '<br>'; } // 清理邮件配置 $mailer->ClearAddresses(); $mailer->ClearAttachments(); }
以上代码中的 Subject
和 Body
可以根据实际情况进行自定义。
三、完整示例代码
下面是一个完整的示例代码来演示如何使用PHP和PHPMailer库发送批量个性化的HTML邮件:
require 'path/to/PHPMailer.php'; require 'path/to/SMTP.php'; $mailer = new PHPMailerPHPMailerPHPMailer(); $mailer->IsSMTP(); $mailer->Host = 'smtp.example.com'; $mailer->Port = 587; $mailer->SMTPAuth = true; $mailer->Username = 'your_email@example.com'; $mailer->Password = 'password'; $mailer->SetFrom('from@example.com', 'Your Name'); $recipientList = [ ['email' => 'recipient1@example.com', 'name' => 'Recipient 1'], ['email' => 'recipient2@example.com', 'name' => 'Recipient 2'], // 添加更多接收者... ]; foreach ($recipientList as $recipient) { $mailer->AddAddress($recipient['email'], $recipient['name']); $mailer->Subject = 'Subject of the Email'; $mailer->Body = 'Hello ' . $recipient['name'] . '
This is the content of the email.
'; if (!$mailer->Send()) { echo 'Failed to send email to ' . $recipient['email'] . ': ' . $mailer->ErrorInfo . '
'; } else { echo 'Email sent to ' . $recipient['email'] . '
'; } $mailer->ClearAddresses(); $mailer->ClearAttachments(); }
请确保在运行代码之前已经正确配置了SMTP服务器信息,并将 path/to/PHPMailer.php
和 path/to/SMTP.php
Avant d'envoyer des e-mails, nous devons également nous assurer que notre environnement PHP a configuré le service SMTP. Vous devez trouver les éléments de configuration suivants dans le fichier php.ini
et les définir correctement avec les informations du serveur SMTP disponibles :
Ce qui précède n'est qu'un exemple de configuration et doit être modifié en fonction des situation réelle.
🎜2. Implémentez la logique du code🎜Ensuite, écrivons du code PHP pour implémenter la fonction d'envoi d'e-mails HTML personnalisés par lots. 🎜🎜Tout d'abord, nous devons introduire la bibliothèque PHPMailer et créer un nouvel objet PHPMailer. Le code est le suivant : 🎜rrreee🎜 Ensuite, nous devons configurer les informations du serveur SMTP et définir l'adresse e-mail et le pseudo de l'expéditeur de l'e-mail : 🎜rrreee🎜 Ensuite, nous devons charger la liste des e-mails reçus et parcourir chaque destinataire. , pour chaque Le destinataire ajoute le contenu approprié. C’est la clé de la personnalisation. L'exemple de code est le suivant : 🎜rrreee🎜Subject
et Body
dans le code ci-dessus peuvent être personnalisés en fonction de la situation réelle. 🎜🎜3. Exemple de code complet🎜Ce qui suit est un exemple de code complet pour montrer comment utiliser PHP et la bibliothèque PHPMailer pour envoyer des e-mails HTML personnalisés par lots : 🎜rrreee🎜 Veuillez vous assurer que les informations du serveur SMTP ont été correctement configurées avant d'exécuter le code, et remplacez path/to/PHPMailer.php
et path/to/SMTP.php
par les chemins de fichiers réels. 🎜🎜Ce qui précède est un exemple de code pour envoyer des e-mails HTML personnalisés par lots à l'aide de PHP et PHPMailer. Avec le code ci-dessus, nous pouvons facilement envoyer des e-mails à des destinataires désignés et personnaliser le contenu de chaque e-mail. J'espère que cet article vous aidera ! 🎜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!