Maison php教程 php手册 php多种形式发送邮件(mail qmail邮件系统 phpmailer类)

php多种形式发送邮件(mail qmail邮件系统 phpmailer类)

Jun 06, 2016 pm 08:25 PM
phpmailer 发送邮件

这篇文章主要介绍了php多种形式发送邮件的方法,包括使用mail()函数、使用管道的形式、使用phpmailer类等方法,大家参考使用吧

1. 使用 mail() 函数

没什么好讲的,就是使用系统自带的smtp系统来发送,,一般是使用sendmail来发。这个按照各个系统不同而定。使用参考手册。

2. 使用管道的形式

昨天刚测试成功,使用本地的qmail来发送邮件。

复制代码 代码如下:


/* 使用qmail发送邮件函数 */ 
function send_check_mail($email, $subject,$uid,$buffer) 

 $command =  "/var/qmail/bin/qmail-inject ".$email; //qmail程式地址,$email是要发送的地址 
 $handle = popen($command, "w"); //打开管道 
 if (!$handle) { 
  return false; 
 }  

 $from = "webmaster@unixsky.net"; //发件人 
 fwrite($handle, "From: ".$from."\n"); //往管道写数据 
 fwrite($handle, "Return-Path: ".$from."\n"); 
 fwrite($handle, "To: ".$uid."\n"); 
 fwrite($handle, "Subject: ".$subject."\n"); 
 fwrite($handle, "Mime-Version: 1.0\n"); 
 fwrite($handle, "Content-Type: text/html; charset=\"gb2312\"\n\n"); 
 fwrite($handle, $buffer."\n"); 
 pclose($handle); //关闭管道 

 return true; 


------------------测试发送邮件: 

//发送邮件 

$subject = "测试邮件"; 

$uid = $_POST['uid']; //from信息 
$content = "

".$u_email  

   ." 你好!

谢谢,本邮件测试!
"; //内容信息 

$u_email = "hren@yahoo.com.cn"; //发送到的邮箱 
if (send_check_mail($u_email, $subject, $uid, $content)) { 

 echo "恭喜!发送投票邮件到你的邮箱!

请检查你的邮箱:".$u_email."

". $close; 
 } else { 

 echo "非常不幸,发送投票邮件到你的邮箱失败,请重试或联系研发人员。

". $close; 

}

当然,也能使用相同的方法来处理sendmail的进程来发送邮件。

下面代码示例:

复制代码 代码如下:


$pp = popen("/usr/sbin/sendmail -t", "w") or die("Cannot fork sendmail"); 
fputs($pp, "To: sterling@designmultimedia.com\r\n"); 
fputs($pp, "Reply-to: $senders_email\r\n"); 
fputs($pp, "From: $senders_email\r\n"); 
fputs($pp, "Subject The Results of your form\r\n\r\n"); 
fputs($pp, "$senders_email sent the fllowing comments:\r\n"); 
fputs($pp, $comments); 
pclose($pp) or die("Cannot close pipe to sendmail"); 
?>

其实这种管道的方法比较底层,取决于你所调用程式的稳定性。所以是一种可选的发送邮件的方式。


3. 使用phpmailer类

是个开源的发送邮件类,主站:

里面是两个文件,一个是class.smtp.php,更有以个是class.phpmailer.php
另外加上官方网站的使用方法:
Examples using phpmailer
1. Advanced ExampleThis demonstrates sending out multiple email messages with binary attachments from a MySQL database with multipart/alternative support.

复制代码 代码如下:


require("class.phpmailer.php"); 

$mail = new phpmailer(); 

$mail->From     = "list@example.com"; 
$mail->FromName = "List manager"; 
$mail->Host     = "smtp1.example.com;smtp2.example.com"; 
$mail->Mailer   = "smtp"; 

@MYSQL_CONNECT("localhost","root","password"); 
@mysql_select_db("my_company"); 
$query?=?SELECT full_name, email,?hoto?ROM employee?HERE?d=$id"; 
$result??MYSQL_QUERY($query); 

while ($row = mysql_fetch_array ($result)) 

    // HTML body 
    $body  = "Hello " . $row["full_name"] . ",

"; 
    $body .= "Your personal photograph to this message.

"; 
    $body .= "Sincerely,
"; 
    $body .= "phpmailer List manager"; 

    // Plain text body (for mail clients that cannot read HTML) 
    $text_body  = "Hello " . $row["full_name"] . ", \n\n"; 
    $text_body .= "Your personal photograph to this message.\n\n"; 
    $text_body .= "Sincerely, \n"; 
    $text_body .= "phpmailer List manager"; 

    $mail->Body    = $body; 
    $mail->AltBody = $text_body; 
    $mail->AddAddress($row["email"], $row["full_name"]); 
    $mail->AddStringAttachment($row["photo"], "YourPhoto.jpg"); 

    if(!$mail->Send()) 
        echo "There has been a mail error sending to " . $row["email"] . "
"; 

    // Clear all addresses and attachments for next loop 
    $mail->ClearAddresses(); 
    $mail->ClearAttachments(); 
}

2. Extending phpmailerExtending classes with inheritance is one of the most powerful features of object-oriented programming. It allows you to make changes to the original class for your own personal use without hacking the original classes. Plus, it is very easy to do. I've provided an example:

Here's a class that extends the phpmailer class and sets the defaults for the particular site:
PHP include file: mail.inc.php

复制代码 代码如下:


require("class.phpmailer.php");

复制代码 代码如下:

Déclaration de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Méthodes PHP et étapes pour envoyer des e-mails à plusieurs personnes à l'aide de PHPMailer Méthodes PHP et étapes pour envoyer des e-mails à plusieurs personnes à l'aide de PHPMailer May 22, 2023 pm 06:10 PM

Dans les applications Web, il est souvent nécessaire d’envoyer des emails à plusieurs destinataires à la fois. PHP est un langage de développement Web très populaire et PHPMailer est une bibliothèque de classes PHP courante pour l'envoi d'e-mails. PHPMailer fournit une interface riche, rendant l'envoi d'e-mails dans des applications PHP plus pratique et plus facile à utiliser. Dans cet article, nous présenterons les méthodes et les étapes à suivre pour utiliser PHPMailer pour envoyer des e-mails à plusieurs destinataires. Pour télécharger PHPMailer, vous devez d'abord vous rendre sur le site officiel (

Pratique de développement PHP : utilisez PHPMailer pour envoyer des e-mails aux utilisateurs de la base de données MySQL Pratique de développement PHP : utilisez PHPMailer pour envoyer des e-mails aux utilisateurs de la base de données MySQL Aug 05, 2023 pm 06:21 PM

Pratique de développement PHP : utilisez PHPMailer pour envoyer des e-mails aux utilisateurs de la base de données MySQL Introduction : Dans la construction de l'Internet moderne, l'e-mail est un outil de communication important. Qu’il s’agisse d’enregistrement d’utilisateur, de réinitialisation de mot de passe ou de confirmation de commande en e-commerce, l’envoi d’emails est une fonction essentielle. Cet article explique comment utiliser PHPMailer pour envoyer des e-mails et enregistrer les informations de courrier électronique dans le tableau d'informations utilisateur de la base de données MySQL. 1. Installez la bibliothèque PHPMailer PHPMailer est

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 ? Jul 22, 2023 am 11:29 AM

Comment envoyer du courrier HTML avec des images intégrées en utilisant PHP et PHPMAILER ? Le courrier électronique HTML est une forme de courrier électronique plus riche et plus personnalisée qui permet d'insérer des images, des liens et des styles dans le courrier électronique. 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 de classes d'envoi d'e-mails PHP

PHP et PHPMAILER : Comment implémenter la fonction anti-spam pour l'envoi d'email ? PHP et PHPMAILER : Comment implémenter la fonction anti-spam pour l'envoi d'email ? Jul 22, 2023 am 11:46 AM

PHP et PHPMAILER : Comment implémenter la fonction anti-spam pour l'envoi d'email ? Introduction : À l'ère d'Internet, le courrier électronique est devenu un élément indispensable de notre vie quotidienne et de notre travail. Cependant, avec la popularité et l'utilisation du courrier électronique, le problème du spam est devenu de plus en plus grave, causant de nombreux problèmes aux utilisateurs. Afin de résoudre ce problème, cet article présentera comment utiliser PHP et la bibliothèque PHPMailer pour implémenter la fonction anti-spam d'envoi d'e-mails. 1. Comprenez que le spam fait référence aux spams non sollicités.

Comment envoyer des e-mails avec Flask-Mail Comment envoyer des e-mails avec Flask-Mail Aug 02, 2023 am 10:17 AM

Comment utiliser Flask-Mail pour envoyer des e-mails Avec le développement d'Internet, le courrier électronique est devenu un outil important pour communiquer. Lors du développement d'applications Web, nous devons parfois envoyer des e-mails dans des scénarios spécifiques, comme l'envoi d'un e-mail de bienvenue après l'inscription réussie d'un utilisateur, ou l'envoi d'un e-mail de réinitialisation de mot de passe lorsqu'un utilisateur oublie son mot de passe, etc. Flask est un framework Web Python simple et flexible, et Flask-Mail est une bibliothèque d'extensions pour envoyer des e-mails sous le framework Flask. Cet article explique comment le faire.

Méthodes PHP et précautions pour l'envoi d'e-mails en pièce jointe à l'aide de la bibliothèque PHPMailer Méthodes PHP et précautions pour l'envoi d'e-mails en pièce jointe à l'aide de la bibliothèque PHPMailer May 21, 2023 pm 06:12 PM

Méthodes PHP et précautions pour l'envoi de pièces jointes à l'aide de la bibliothèque PHPMailer Le courrier électronique est devenu un moyen de communication très important dans la vie moderne. Dans de nombreux projets de développement, nous devons utiliser du code pour envoyer automatiquement des e-mails. Pour le moment, la bibliothèque PHPMailer est notre meilleur choix. PHPMailer est une bibliothèque dédiée à l'envoi d'emails en PHP. Il peut facilement envoyer des e-mails, y compris des e-mails et des pièces jointes au format HTML. Cet article se concentrera sur la façon d'envoyer des e-mails avec des pièces jointes dans la bibliothèque PHPMailer.

Maîtriser PHP et PHPMAILER : Comment implémenter la fonction de réponse automatique pour l'envoi d'email ? Maîtriser PHP et PHPMAILER : Comment implémenter la fonction de réponse automatique pour l'envoi d'email ? Jul 22, 2023 am 11:57 AM

Maîtriser PHP et PHPMAILER : Comment implémenter la fonction de réponse automatique pour l'envoi d'email ? Dans la société moderne, le courrier électronique est devenu l’un des moyens importants de communication dans la vie quotidienne. De nombreux sites Web ou entreprises doivent communiquer avec les utilisateurs par e-mail, et la réponse automatique aux e-mails est devenue très importante. Cet article explique comment utiliser PHP et la bibliothèque PHPMailer pour implémenter la fonction de réponse automatique pour l'envoi d'e-mails. Étape 1 : obtenir les informations de messagerie de l'utilisateur. Tout d'abord, nous devons obtenir les informations de messagerie de l'utilisateur. Sur un site Web ou une application, utilisez

Python se connecte à l'interface Alibaba Cloud pour implémenter la fonction d'envoi d'e-mails Python se connecte à l'interface Alibaba Cloud pour implémenter la fonction d'envoi d'e-mails Jul 05, 2023 pm 04:33 PM

Python se connecte à l'interface Alibaba Cloud pour implémenter la fonction d'envoi d'e-mails. Alibaba Cloud fournit une série d'interfaces de services, notamment des services d'envoi d'e-mails. En nous connectant à l'interface Alibaba Cloud via un script Python, nous pouvons envoyer rapidement des e-mails. Cet article vous montrera comment utiliser les scripts Python pour vous connecter à l'interface Alibaba Cloud et implémenter la fonction d'envoi d'e-mails. Tout d'abord, nous devons demander le service d'envoi d'e-mails sur Alibaba Cloud et obtenir les informations d'interface correspondantes. Dans la console de gestion Alibaba Cloud, sélectionnez le service push d'e-mail et créez un nouvel e-mail.

See all articles