<?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=很遗憾,邮件发送失败了!请检查邮件账户配置是否正确!"); } } } ?>
Dies ist eine PHP-Klasse zum Versenden von E-Mails. Freunde, die sie benötigen, können sie herunterladen und verwenden.
Gebrauchsanweisung:
$m= new SendM('SMTP-Serveradresse', 'Konto', 'Passwort', Port (int), Timeout-Wiederholungszeit (int));
$m->Send( 'E-Mail des Empfängers', 'Betreff', 'E-Mail-Inhalt');
Verwendungsbeispiel:
$m= new SendM('smtp.yeah.net','testuser','testuserpwd',25,30 );
$m->Send('a@coolmr.com ','Test-E-Mail','Dies ist eine Test-E-Mail zum Versenden von E-Mails, vielen Dank für Ihre Unterstützung');
Alle Ressourcen auf dieser Website werden von Internetnutzern bereitgestellt oder von großen Download-Sites nachgedruckt. Bitte überprüfen Sie selbst die Integrität der Software! Alle Ressourcen auf dieser Website dienen nur als Referenz zum Lernen. Bitte nutzen Sie diese nicht für kommerzielle Zwecke. Andernfalls sind Sie für alle Folgen verantwortlich! Wenn ein Verstoß vorliegt, kontaktieren Sie uns bitte, um ihn zu löschen. Kontaktinformationen: admin@php.cn
Verwandter Artikel
01 Jan 2025
Senden von E-Mails von Localhost mit XAMPPUm effektiv E-Mails von Localhost mit XAMPP senden zu können, ist es wichtig, dessen Konfiguration zu verstehen und...
24 Dec 2024
Den Sprung von der Webentwicklung zu HTML-E-Mails wagen Beim Übergang von der Webentwicklung zur Erstellung von HTML-E-Mails können Sie auf Herausforderungen stoßen ...
02 Jan 2025
Anhänge zu E-Mails mit der PHP-Mail()-Funktion hinzufügen Sie möchten eine PDF-Datei mit der PHP-mail()-Funktion an eine E-Mail anhängen, sind aber...
26 Dec 2024
Fehlerbehebung bei SMTP-Authentifizierungsfehlern beim Senden von E-Mails in PHPBeim Senden von E-Mails von PHP über einen SMTP-Server ist es wichtig sicherzustellen, dass...
26 Dec 2024
Probleme beim Senden von E-Mails über den Gmail-SMTP-Server mit PHP-Mailer: Fehler „SMTP AUTH ist erforderlich“ Beim Versuch, eine E-Mail über den Gmail-SMTP-Server zu senden...
23 Dec 2024
Einbinden externer Bibliotheken in IntelliJ IDEA-ArtefakteUm externe Bibliotheken nahtlos in Ihre IntelliJ IDEA-Artefakte zu integrieren,...
Hot Tools
PHP-Bibliothek für Abhängigkeitsinjektionscontainer
PHP-Bibliothek für Abhängigkeitsinjektionscontainer
Eine Sammlung von 50 hervorragenden klassischen PHP-Algorithmen
Klassischer PHP-Algorithmus, lernen Sie hervorragende Ideen und erweitern Sie Ihr Denken
Kleine PHP-Bibliothek zur Optimierung von Bildern
Kleine PHP-Bibliothek zur Optimierung von Bildern