給多個地址發郵件的類

來源:互聯網
上載者:User
關鍵字 給多個地址發郵件的類

//////////////////////////////////////////////////////////// 
//  EmailClass 0.5 
//  class for sending mail 
// 
//  Paul Schreiber 
//  php@paulschreiber.com 
//  http://paulschreiber.com/ 
// 
//  parameters 
//  ---------- 
//  - subject, message, senderName, senderEmail and toList are required 
//  - ccList, bccList and replyTo are optional 
//  - toList, ccList and bccList can be strings or arrays of strings 
//   (those strings should be valid email addresses 
// 
//  example 
//  ------- 
//  $m = new email ( "hello there",      // subject 
//          "how are you?",      // message body 
//          "paul",          // sender's name 
//          "foo@foobar.com",     // sender's email 
//          array("paul@foobar.com", "foo@bar.com"), // To: recipients 
//          "paul@whereever.com"   // Cc: recipient 
//          ); 
// 
//    PRint "mail sent, result was" . $m->send(); 
// 
// 
// 

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

class email { 

    // the constructor! 
    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; 

        // set the To: recipient(s) 
        if ( is_array($toList) ) { 
            $this->to = join( $toList, "," ); 
        } else { 
            $this->to = $toList; 
        } 

        // set the Cc: recipient(s) 
        if ( is_array($ccList) && sizeof($ccList) ) { 
            $this->cc = join( $ccList, "," ); 
        } elseif ( $ccList ) { 
            $this->cc = $ccList; 
        } 
         
        // set the Bcc: recipient(s) 
        if ( is_array($bccList) && sizeof($bccList) ) { 
            $this->bcc = join( $bccList, "," ); 
        } elseif ( $bccList ) { 
            $this->bcc = $bccList; 
        } 

    } 

    // send the message; this is actually just a wrapper for 
    // PHP's mail() function; heck, it's PHP's mail function done right :-) 
    // you could override this method to: 
    // (a) use sendmail directly 
    // (b) do SMTP with sockets 
    function send () { 
        // create the headers needed by PHP's mail() function 

        // sender 
        $this->headers = "From: " . $this->sender . "\n"; 

        // reply-to address 
        if ( $this->replyTo ) { 
            $this->headers .= "Reply-To: " . $this->replyTo . "\n"; 
        } 

        // Cc: recipient(s) 
        if ( $this->cc ) { 
            $this->headers .= "Cc: " . $this->cc . "\n"; 
        } 

        // Bcc: recipient(s) 
        if ( $this->bcc ) { 
            $this->headers .= "Bcc: " . $this->bcc . "\n"; 
        } 
     
        return mail ( $this->to, $this->subject, $this->message, $this->headers ); 
    } 
} 


} 
?> 
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.