PHP中的类-邮件群发

Linuxaid Wing

   
本类可以用与于email的群发,测试的环境是linux,系统需要安装sendmail才能使用

<?php  

if ( ! defined( 'MAIL_CLASS_DEFINED' ) ) {  
       define('MAIL_CLASS_DEFINED', 1 );  

class email {  

     
       function email ( $subject, $message, $senderName, $senderEmail, $toList, $ccList=0, $bccList=0, $replyTo=0) {  
               $this->sender = $senderName . " <$senderEmail>";  
               $this->replyTo = $replyTo;  
               $this->subject = $subject;  
               $this->message = $message;  

               //
定义收件人  
               if ( is_array($toList) ) {  
                       $this->to = join( $toList, "," );  
               } else {  
                       $this->to = $toList;  
               }  

               //
定义抄送名单
               if ( is_array($ccList) && sizeof($ccList) ) {  
                       $this->cc = join( $ccList, "," );  
               } elseif ( $ccList ) {  
                       $this->cc = $ccList;  
               }  
                 
               //
定义密码抄送名单  
               if ( is_array($bccList) && sizeof($bccList) ) {  
                       $this->bcc = join( $bccList, "," );  
               } elseif ( $bccList ) {  
                       $this->bcc = $bccList;  
               }  

       }  

       //
发送函数  
       //
利用php中的mail()函数发送email
       
       function send () {  
//
发件人
                             $this->headers = "From: " . $this->sender . " ";  

               //
回复地址  
               if ( $this->replyTo ) {  
                       $this->headers .= "Reply-To: " . $this->replyTo . " ";  
               }  

               //
抄送  
               if ( $this->cc ) {  
                       $this->headers .= "Cc: " . $this->cc . " ";  
               }  

               //
秘密抄送
               if ( $this->bcc ) {  
                       $this->headers .= "Bcc: " . $this->bcc . " ";  
               }  
         
               return mail ( $this->to, $this->subject, $this->message, $this->headers ); //
返回结果
       }  
}  


}  
?>

说明:


 
参数说明  
  ----------  
  -
以下几个参数是必须的:subject, message, senderName, senderEmail toList  
  -
这几个参数则是可选的:ccList, bccList replyTo  
  - toList, ccList
bccList 必须是有效的email地址
 
 
例如  
  -------  
  $m = new email ( "
问候",             主题  
                   "
你好吗?",            正文  
                   "Wing",                    
发件人姓名  
                   "wing@linuxaid.com.cn",          
发件人email  
                   array("aa@aa.com", "bb@bb.com),  
收件人  
                   "cc@cc.com"      
抄送
                  );  
 
      print "
邮件已发送,发送结果:" . $m->send();