搜索
首页PHP 库Other libraries发送电子邮件的php类
发送电子邮件的php类
<?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=很遗憾,邮件发送失败了!请检查邮件账户配置是否正确!"); }
  }
}
?>

这是一个发送电子邮件的php类,需要的朋友可以下载使用。

使用说明:

$m= new SendM('smtp服务器地址','账号','密码',端口(int),超时重试时间(int));

$m->Send('收件人邮箱 ','主题','邮件正文内容');

使用范例:

$m= new SendM('smtp.yeah.net','testuser','testuserpwd',25,30);

$m->Send('a@coolmr.com ','测试邮件','这是一封邮件发送类的测试邮件,谢谢您的支持');

免责声明

本站所有资源均由网友贡献或各大下载网站转载。请自行检查软件的完整性!本站所有资源仅供学习参考。请不要将它们用于商业目的。否则,一切后果由您负责!如有侵权,请联系我们删除。联系方式:admin@php.cn

相关文章

自动发送电子邮件自动发送电子邮件

07Nov2024

?很高兴分享我的项目——自动电子邮件发送系统? 我开发了一种工具,通过处理从定制消息到大规模分发的所有内容,可以更快、更高效地发送电子邮件。 ?无论是用于营销、提醒还是

电子邮件发送服务电子邮件发送服务

26Jan2025

NPM 和 GitHub 集成:使用 Node.js 简化电子邮件发送 此 Node.js 应用程序使用 nodemailer 包简化了电子邮件发送。 以最少的配置享受无缝的电子邮件传送。 主要特点: 轻量且高度定制

如何使用 PHP 发送电子邮件?如何使用 PHP 发送电子邮件?

20Dec2024

使用 PHP 发送电子邮件:综合指南将电子邮件功能集成到基于 PHP 的网站中是有效...的关键任务

使用node.js发送电子邮件使用node.js发送电子邮件

08Feb2025

Node.js邮件发送指南:使用NodeMailer发送和接收邮件 本文将指导您如何使用Node.js发送和接收邮件,并解决常见问题。NodeMailer是流行的npm模块,每周下载量超过三百万次,但需要SMTP服务器支持。 核心要点: NodeMailer是Node.js应用发送邮件最常用的npm模块,每周下载量超过三百万次,需要SMTP服务器。 由于不同邮件客户端的渲染引擎和限制各异,制作兼容各种客户端的HTML邮件颇具挑战性。预制模板、设计工具和邮件标记语言等工具和资源可以简化流程。 为

与phpmailer一起发送PHP中的电子邮件与phpmailer一起发送PHP中的电子邮件

08Feb2025

PHPMailer:PHP邮件发送的利器 PHPMailer是广受欢迎的开源PHP邮件发送库,自2001年发布以来,一直是PHP开发者发送程序化邮件的首选方案之一,与Swiftmailer等其他流行库并驾齐驱。本文将阐述为何PHPMailer优于PHP内置的mail()函数,并提供代码示例。 核心要点 PHPMailer是一个流行的开源PHP邮件发送库,比PHP内置的mail()函数提供更多功能和灵活性,包括面向对象的接口、更轻松的HTML和附件处理,以及使用非本地邮件服务器的能力。 PHP

如何在 PHP 中验证电子邮件地址而不发送电子邮件?如何在 PHP 中验证电子邮件地址而不发送电子邮件?

16Dec2024

在不发送电子邮件的情况下验证电子邮件地址随着垃圾邮件过滤和电子邮件列表验证的出现,开发人员通常需要一种方法...

See all articles