search
HomePHP LibrariesOther librariesphp class for sending email
php class for sending email
<?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=很遗憾,邮件发送失败了!请检查邮件账户配置是否正确!"); }
  }
}
?>

This is a php class for sending emails. Friends who need it can download it and use it.

Instructions for use:

$m= new SendM('smtp server address', 'account', 'password', port (int), timeout retry time (int));

$m->Send('Recipient Email', 'Subject', 'Mail text');

Usage example:

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

$m->Send('a@coolmr.com ','Test Email','This This is a test email for sending emails. Thank you for your support');

Disclaimer

All resources on this site are contributed by netizens or reprinted by major download sites. Please check the integrity of the software yourself! All resources on this site are for learning reference only. Please do not use them for commercial purposes. Otherwise, you will be responsible for all consequences! If there is any infringement, please contact us to delete it. Contact information: admin@php.cn

Related Article

Compare and recommend Java email sending libraries: find the right email sending tool for youCompare and recommend Java email sending libraries: find the right email sending tool for you

27Dec2023

Recommendation and comparison of Java email sending libraries: Choose the email sending tool that suits you, you need specific code examples Summary: When developing Java applications, we often need to send emails. This article will introduce several commonly used Java email sending libraries and compare them to help you choose the email sending tool suitable for your project. In addition, this article will provide specific code examples so that readers can better understand how to use these libraries. 1. JavaMailAPIJavaMailAPI is a Java platform

PHP email sending classPHP email sending class

28Jul2016

: PHP mail sending class: Mail sending class obtained from ThinkPHP, collect it

Email sending techniques in PHPEmail sending techniques in PHP

24May2023

With the development of Internet technology, email is becoming more and more important in people's daily life and work. In website development, sending emails is a common need, and PHP, as a popular programming language, provides many email sending techniques to meet the needs of developers. This article will introduce email sending techniques in PHP, including email protocols, email libraries, email templates, etc., to help developers better understand and use PHP to send emails. Email Protocol Before sending email, we need to understand some basic knowledge of email protocol. S

SMTP email sending class written in PHPSMTP email sending class written in PHP

25Jul2016

SMTP email sending class written in PHP

PHP email parsing and sending functions: email parsing and sending skills for imap_open, imap_search, mail and other functionsPHP email parsing and sending functions: email parsing and sending skills for imap_open, imap_search, mail and other functions

18Nov2023

In-depth explanation of PHP email parsing and sending functions: Email parsing and sending skills of imap_open, imap_search, mail and other functions, which require specific code examples. Introduction: With the popularity of email, using PHP to parse and send emails has become a common requirement in network development. . This article will introduce in detail several commonly used email parsing and sending functions in PHP: imap_open, imap_search and mail. By understanding the usage techniques and specific code examples of these functions, readers can

PHP class Full-featured email sending class_PHP tutorialPHP class Full-featured email sending class_PHP tutorial

21Jul2016

PHP class Full-featured class for sending emails. Copy the code as follows: ?php class Email { //---Set global variable var $mailTo = ""; // Recipient var $mailCC = ""; // Cc var $mailBCC = ""; // Secret CC var $mailFrom =

See all articles