• 这个周末恒大金碧天下邀您一起看童年的马戏节 2019-03-11
  • 苦瓜-热门标签-华商生活 2019-03-10
  • 承载历史使命的 “乡村振兴”,城乡共同参与 2019-03-05
  • 从穿工装相亲到出门被嘲笑 新飞电器员工口述企业兴衰史 2019-03-05
  • Lorgane législatif national adopte la loi sur la supervision 2019-02-20
  • 俄罗斯世界杯 完全观战手册 2019-02-17
  • 萨拉赫,你再不上 埃及队就要回家啦 2019-02-17
  • 牢牢抓住新时代广东发展的关键重点——三论认真学习贯彻省委十二届四次全会精神 2019-02-16
  • 娜扎谈分手张翰“想不起来了” 安全感全来自妈妈 2019-02-13
  • 敲黑板!“信息公开”不是“隐私公开”! 2019-02-13
  • 点击天山网 掌握全新疆 2019-02-10
  • 在美中国留学生江玥被枪杀案宣判 罪犯获刑25年 2019-02-10
  • 探索记忆之谜 科学家成功向海兔移植记忆 2019-02-08
  • 皇帝的女神:《雍正十二美人图》中的隐秘审美与渴望 2019-02-02
  • [大笑]是谁在炒呢?你们不参与,能炒得起来么? 2019-02-02
  • Jquery中文网 南粤风采36选7开奖公告 www.77402m.com
    Jquery中文网 >  脚本编程  >  php  >  正文 php 发送带附件邮件的类

    福建彩票36选7开奖结果:php 发送带附件邮件的类

    发布时间:2017-08-01   编辑:南粤风采36选7开奖公告 www.77402m.com
    分享一个php实现的发送带附件邮件的类,各种常用的功能都封装成了具体的方法,并附有演示示例,有需要的朋友参考下。

    南粤风采36选7开奖公告 www.77402m.com 1,类文件 emailclass.php
     

    复制代码 代码示例:
    <?
    /**
    * 发送带附件的邮件
    * by www.jbxue.com
    */
    class CMailFile { 
        var $subject;  
        var $addr_to;  
        var $text_body;  
        var $text_encoded;  
        var $mime_headers;  
        var $mime_boundary = "--==================_846811060==_";  
        var $smtp_headers;  
         
        function CMailFile($subject,$to,$from,$msg,$filename,$downfilename,$mimetype = "application/octet-stream",$mime_filename = false) {  
            $this->subject = $subject;        
            $this->addr_to = $to;         
            $this->smtp_headers = $this->write_smtpheaders($from); 
            $this->text_body = $this->write_body($msg); 
            $this->text_encoded = $this->attach_file($filename,$downfilename,$mimetype,$mime_filename); 
            $this->mime_headers = $this->write_mimeheaders($filename, $mime_filename); 
        }  
     
        function attach_file($filename,$downfilename,$mimetype,$mime_filename) { 
            $encoded = $this->encode_file($filename); 
            if ($mime_filename) $filename = $mime_filename; 
            $out = "--" . $this->mime_boundary . "\n"; 
            $out = $out . "Content-type: " . $mimetype . "; name=\"$filename\";\n"; 
            $out = $out . "Content-Transfer-Encoding: base64\n"; 
            $out = $out . "Content-disposition: attachment; filename=\"$downfilename\"\n\n"; 
            $out = $out . $encoded . "\n"; 
            $out = $out . "--" . $this->mime_boundary . "--" . "\n"; 
            return $out; 
        }  
     
        function encode_file($sourcefile) {  
            if (is_readable($sourcefile)) {  
                $fd = fopen($sourcefile, "r");  
                $contents = fread($fd, filesize($sourcefile));  
                $encoded = chunk_split(base64_encode($contents));  
                fclose($fd);  
            }  
            return $encoded;  
        }  
     
        function sendfile() {    
            $headers = $this->smtp_headers . $this->mime_headers;  
            $message = $this->text_body . $this->text_encoded;  
            mail($this->addr_to,$this->subject,$message,$headers);  
        }  
     
        function write_body($msgtext) {  
            $out = "--" . $this->mime_boundary . "\n";  
            $out = $out . "Content-Type: text/plain; charset=\"us-ascii\"\n\n";  
            $out = $out . $msgtext . "\n";  
            return $out;  
        }  
     
        function write_mimeheaders($filename, $mime_filename) {  
            if ($mime_filename) $filename = $mime_filename;  
            $out = "MIME-version: 1.0\n";  
            $out = $out . "Content-type: multipart/mixed; ";  
            $out = $out . "boundary=\"$this->mime_boundary\"\n";  
            $out = $out . "Content-transfer-encoding: 7BIT\n";  
            $out = $out . "X-attachments: $filename;\n\n";  
            return $out;  
        }  
     
        function write_smtpheaders($addr_from) {  
            $out = "From: $addr_from\n";  
            $out = $out . "Reply-To: $addr_from\n";  
            $out = $out . "X-Mailer: PHP3\n";  
            $out = $out . "X-Sender: $addr_from\n";  
            return $out;  
        }  
    }  
     
    /*用法 - 例如:mimetype 为 "image/gif" 
        $mailfile = new CMailFile($subject,$sendto,$replyto,$message,$filename,$mimetype); 
        $mailfile->sendfile(); 
     
        $subject -- 主题 
        $sendto -- 收信人地址 
        $replyto -- 回复地址 
        $message -- 信件内容 
        $filename -- 附件文件名 
        $downfilename -- 下載的文件名
        $mimetype -- mime类型
    */ 
    ?> 

    2,演示示例 demo.php
     

    复制代码 代码示例:
    <?php 
        require_once('emailclass.php'); 
     
        //发送邮件 
         
        //主題 
        $subject = "test send email"; 
     
        //收件人 
        $sendto = '[email protected]'; 
         
        //發件人 
        $replyto = '[email protected]'; 
         
        //內容 
        $message = "test send email content"; 
         
        //附件 
        $filename = 'test.jpg'; 
         
        //附件类別 
        $mimetype = "image/jpeg"; 
     
        $mailfile = new CMailFile($subject,$sendto,$replyto,$message,$filename,$excelname,$mimetype);  
        $mailfile->sendfile(); 
    ?>

    >>> 您可能感兴趣的文章:
    php socket使用smtp发送带附件的邮件
    Php中IMAP应用举例(收发邮件、删除邮件、附件下载)
    PHPMailer发送带附件邮件的例子
    PHPMailer发送邮件中文附件名乱码的解决办法

    您可能感兴趣的文章:
    phpmailer实现的简单openvpn用户认证的代码
    PHPMailer批量发送邮件的实例代码
    使用phpmailer发送邮件的例子
    有关phpmailer的用法
    php使用phpMailer发送邮件的例子
    如何提高E-mail收发的成功率
    使用pear:Net_SMTP类发送邮件的例子
    php使用Pear的NetMail发送smtp邮件
    邮件系统基本的网络协议
    php中通过curl smtp发送邮件的例子

    关键词: PHP邮件发送  发送邮件   
    [关闭]
  • 这个周末恒大金碧天下邀您一起看童年的马戏节 2019-03-11
  • 苦瓜-热门标签-华商生活 2019-03-10
  • 承载历史使命的 “乡村振兴”,城乡共同参与 2019-03-05
  • 从穿工装相亲到出门被嘲笑 新飞电器员工口述企业兴衰史 2019-03-05
  • Lorgane législatif national adopte la loi sur la supervision 2019-02-20
  • 俄罗斯世界杯 完全观战手册 2019-02-17
  • 萨拉赫,你再不上 埃及队就要回家啦 2019-02-17
  • 牢牢抓住新时代广东发展的关键重点——三论认真学习贯彻省委十二届四次全会精神 2019-02-16
  • 娜扎谈分手张翰“想不起来了” 安全感全来自妈妈 2019-02-13
  • 敲黑板!“信息公开”不是“隐私公开”! 2019-02-13
  • 点击天山网 掌握全新疆 2019-02-10
  • 在美中国留学生江玥被枪杀案宣判 罪犯获刑25年 2019-02-10
  • 探索记忆之谜 科学家成功向海兔移植记忆 2019-02-08
  • 皇帝的女神:《雍正十二美人图》中的隐秘审美与渴望 2019-02-02
  • [大笑]是谁在炒呢?你们不参与,能炒得起来么? 2019-02-02