Maison  >  Article  >  développement back-end  >  ThinkPHP Comment envoyer des e-mails via PHPMailer aux boîtes aux lettres d'entreprise

ThinkPHP Comment envoyer des e-mails via PHPMailer aux boîtes aux lettres d'entreprise

php中世界最好的语言
php中世界最好的语言original
2017-12-20 14:33:593936parcourir

Peut-être avez-vous besoin d'envoyer des e-mails aux utilisateurs du site Web en raison de besoins professionnels, mais avec autant de clients, vous ne pouvez pas les envoyer manuellement un par un, je vais donc vous proposer une bonne façon d'utiliser PHP pour vous aider à résoudre ce problème fastidieux. tâche.

J'utilise la boîte aux lettres 163 pour envoyer des fichiers qui doivent être traités, mais si l'opération est trop fréquente [ou s'il y a d'autres problèmes], l'envoi échouera. Il semble qu'il n'y ait pas eu de situation similaire lors de l'utilisation de QQ, mais la configuration de la boîte aux lettres QQ est légèrement différente de celle de 163. Je la posterai ici, de peur que mes amis ne tombent dans un piège, je n'entrerai pas dans plus de détails. ci-dessous. Jetons un coup d'œil à l'introduction détaillée.

Avantages de PHPMailer :

Peut fonctionner sur n'importe quelle plateforme

Prend en charge l'authentification SMTP

Spécifiez plusieurs destinataires lors de l'envoi d'e-mails, adresse Cc, Cci adresse et adresse de réponse ; Remarque : L'ajout de Cc et Bcc n'est pris en charge que par le mode SMTP sous la plateforme Win

Prend en charge plusieurs encodages de courrier électronique, notamment : 8 bits, base64, binaire et imprimable entre guillemets

Prend en charge les redondances. Serveurs SMTP, c'est-à-dire que vous pouvez spécifier l'adresse du serveur SMTP principal ou uniquement le serveur SMTP de sauvegarde

Prend en charge les e-mails avec pièces jointes et vous pouvez ajouter des pièces jointes dans n'importe quel format aux e-mails, bien sûr, c'est à vous de décider. a suffisamment de bande passante pour prendre en charge

les informations d'en-tête d'e-mail personnalisées, ce qui est similaire à l'envoi d'informations d'en-tête en PHP via la fonction d'en-tête

prend en charge la transformation du corps de l'e-mail en contenu HTML , vous pouvez ensuite insérer des images dans le corps de l'e-mail

Prise en charge flexible du débogage

Les serveurs SMTP testés et compatibles incluent : Sendmail, qmail, Postfix, Imail, Exchange, etc.

1 . Téléchargez PHPMailer

Comme il existe de nombreuses versions, je partagerai la version packagée que j'utilise ici. Les amis qui utilisent d'autres versions peuvent utiliser la leur propre

Adresse de téléchargement : http. ://xiazai.jb51.net/201711/yuanma/phpmailer(jb51.net).rar

2. Placez PHPMailer

i J'ai créé un dossier nommé [ Plugin] dans le répertoire racine spécifiquement pour divers plug-ins, puis placé directement PHPMailer sous le dossier Plugin


3. Se sentir heureux Codons

Je mets mon code ici, vous pouvez le modifier selon vos besoins

function sendMail($to,$title,$content){
 require('./Plugin/phpmailer/class.phpmailer.php');
 try {
  $mail = new \PHPMailer(true);
  $mail->IsSMTP();
  $mail->SMTPSecure = 'ssl';
  $mail->CharSet = 'UTF-8';
  $mail->SMTPAuth = true; //开启认证
  $mail->Port = 465; //网易为25
  $mail->Host = "smtp.qq.com";
  $mail->Username = "******"; //qq此处为邮箱前缀名 163为邮箱名
  $mail->Password = "******";
  $mail->AddReplyTo("******@qq.com", "******");//回复地址
  $mail->From = "******@qq.com";
  $mail->FromName = '******';
  $mail->AddAddress($to);
  $mail->Subject = $title;
  $mail->Body = $content;
  $mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; //当邮件不支持html时备用显示
  $mail->WordWrap = 80; // 设置每行字符串的长度
//$mail->AddAttachment("f:/test.png"); //可以添加附件
  $mail->IsHTML(true);
  $mail->Send();
  echo '邮件已发送';
 } catch (phpmailerException $e) {
  echo "邮件发送失败:" . $e->errorMessage();
 }
 }


Copiez directement les modifications de code ci-dessus Entrez votre contrôleur

Choses à noter :

$mail->Port = 465; //网易163 25
$mail->Host = "smtp.qq.com";
$mail->Username = "**"; //qq此处为邮箱前缀名 163为邮箱名
$mail->Password = "******";


Dans ce cas, le port de NetEase est 25

Pour le nom d'utilisateur, NetEase peut directement utiliser le Nom de courrier électronique. Pour le courrier électronique QQ, veuillez saisir le préfixe de courrier électronique [nom d'utilisateur] "eg.1214982635@qq.com Veuillez saisir 1214982635"

Mot de passe NetEase peut saisir directement le mot de passe de courrier électronique [si vous avez un code d'autorisation, entrez le code d'autorisation], veuillez entrer le code d'autorisation via QQ et envoyez un message texte pour le générer


Je crois qu'après avoir lu ces cas, vous maîtrisez le méthode. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture connexe :

php utilise l'environnement de déploiement git

Quelques cas d'utilisation de Git

Explication détaillée des types de données JavaScript et des codes d'utilisation de git

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