<?php class SendM{ private $Mailhost,$Mailuser,$Mailpwd,$Mailport,$Mailtimeout,$ms,$ending = "\r\n",$endingc="\n"; function __construct($Mailhost,$Mailuser,$Mailpwd,$Mailport,$Mailtimeout){ $this->Mailhost=$Mailhost; $this->Mailuser=$Mailuser; $this->Mailpwd=$Mailpwd; $this->Mailport=$Mailport; $this->Mailtimeout=$Mailtimeout; $this->ConnectSmtpServer(); } private function ConnectSmtpServer(){ if(!is_string($this->Mailhost)){ settype(trim($this->Mailhost),"string"); } if(!is_integer($this->Mailport)){ settype(trim($this->Mailport),"integer"); } if(!is_integer($this->Mailtimeout)){ settype(trim($this->Mailtimeout),"integer"); } $this->ms=@fsockopen($this->Mailhost,$this->Mailport,$this->errorno,$this->errorstr,$this->Mailtimeout); if(substr(PHP_OS,0,3) != "WIN"){ stream_set_timeout($this->ms, $this->Mailtimeout, 0);} $rcp = $this->get_echo(); fputs($this->ms,"ehlo bobo".$this->ending); $rcp = $this->get_echo(); if(substr($rcp,0,3)!='250'){ return false; } fputs($this->ms,'auth login'.$this->ending); $rcp = $this->get_echo(); if(substr($rcp,0,3)=='334'){ $this->Auth($this->Mailuser,$this->Mailpwd); }else{ return false; } } private function Auth($Mailuser,$Mailpwd){ $this->Mailuseren=base64_encode($Mailuser); $this->Mailpwden=base64_encode($Mailpwd); fputs($this->ms,$this->Mailuseren.$this->ending); $rcp = $this->get_echo(); fputs($this->ms,$this->Mailpwden.$this->ending); $rcp = $this->get_echo(); } private function get_echo(){ $edata=""; while($estr=@fgets($this->ms,600)){ $edata .= $estr; if(substr($estr,3,1) == " ") { break; } } return $edata; } public function Send($to,$subject,$connect){ $host=explode('.',$this->Mailhost); $fromaddress=$this->Mailuser.'@'.$host[1].'.'.$host[2]; fputs($this->ms,'mail from:<'.$fromaddress.'>'.$this->ending); $rcp = $this->get_echo(); fputs($this->ms,'rcpt to:<'.$to.'>'.$this->ending); $rcp = $this->get_echo(); fputs($this->ms,'data'.$this->ending); $rcp = $this->get_echo(); fputs($this->ms,"to:$to".$this->endingc); fputs($this->ms,"from:$fromaddress".$this->endingc); fputs($this->ms,"subject:$subject".$this->endingc.$this->endingc); fputs($this->ms,"$connect".$this->endingc); fputs($this->ms,'.'.$this->ending); $rcp = $this->get_echo(); if(substr($rcp,0,3)=='250'){header("Location:main_pro.php?act=msg&errors=on&msg=邮件发送成功!已成功提交至对方服务器!"); }else{ header("Location:main_pro.php?act=msg&errors=on&msg=很遗憾,邮件发送失败了!请检查邮件账户配置是否正确!"); } } } ?>
Il s'agit d'une classe PHP pour envoyer des e-mails. Les amis qui en ont besoin peuvent la télécharger et l'utiliser.
Instructions d'utilisation :
$m= new SendM('adresse du serveur smtp', 'compte', 'mot de passe', port (int), délai de nouvelle tentative (int));
$m->Send( 'E-mail du destinataire', 'Objet', 'Contenu de l'e-mail');
Exemple d'utilisation :
$m= new SendM('smtp.yeah.net','testuser','testuserpwd',25,30 );
$m->Send('a@coolmr.com ','E-mail de test','Ceci est un e-mail de test pour l'envoi d'e-mails, merci pour votre soutien');
Toutes les ressources de ce site proviennent d'internautes ou sont réimprimées par les principaux sites de téléchargement. Veuillez vérifier vous-même l'intégrité du logiciel ! Toutes les ressources de ce site sont uniquement à titre de référence d'apprentissage. Merci de ne pas les utiliser à des fins commerciales. Sinon, vous serez responsable de toutes les conséquences ! En cas d'infraction, veuillez nous contacter pour la supprimer. Coordonnées : admin@php.cn
Article connexe
06 Jun 2018
Cet article présente principalement PHP pour utiliser la classe SMTP pour envoyer des e-mails. Les amis intéressés peuvent s'y référer, j'espère que cela sera utile à tout le monde.
06 Jun 2018
Cet article présente principalement PHP pour utiliser la classe SMTP pour envoyer des e-mails. Les amis intéressés peuvent s'y référer, j'espère que cela sera utile à tout le monde.
23 May 2023
Avec le développement du courrier électronique, de plus en plus de sites Web commencent à utiliser les fonctions de courrier électronique. Le courrier électronique peut fournir aux utilisateurs des services tels que des notifications d'informations clés, des réinitialisations de mots de passe, des abonnements à des actualités, des confirmations d'événements, etc. En tant que l'un des langages de script de serveur les plus populaires au monde, PHP dispose également de puissantes capacités d'implémentation de fonctions de messagerie. Cet article présentera le processus d'implémentation spécifique de PHP utilisant la classe smtp pour envoyer des e-mails. Travail de préparation Avant d'utiliser la fonction email, nous devons préparer certaines informations nécessaires : (1) Adresse du serveur SMTP : par exemple
07 May 2018
L'envoi d'e-mails en PHP joue un rôle important en PHP, c'est pourquoi cet article expliquera en détail sa fondation et son utilisation.
10 Jul 2020
Dans cet article, nous avons partagé avec vous en détail les exemples pertinents d’envoi d’emails SMTP en PHP. Les amis intéressés peuvent en prendre connaissance.
11 Jun 2018
phpmailer est un plug-in PHP gratuit d'envoi d'e-mails. Nous pouvons utiliser phpmailer pour nous connecter à notre adresse e-mail désignée, puis utiliser cette adresse e-mail pour nous envoyer automatiquement des e-mails. Cette adresse e-mail désormais gratuite est prise en charge par 163 et Sina. N'entrons pas dans les détails. Jetons un coup d'œil à un e-mail phpmainer 163 pour envoyer un e-mail.
Hot Tools
Bibliothèque PHP pour les conteneurs d'injection de dépendances
Bibliothèque PHP pour les conteneurs d'injection de dépendances
Une collection de 50 excellents algorithmes PHP classiques
Algorithme PHP classique, apprenez d'excellentes idées et élargissez votre réflexion
Petite bibliothèque PHP pour optimiser les images
Petite bibliothèque PHP pour optimiser les images