我的一亩三分地 我就喜欢!
13fen  设为主页
 收藏本站
 
当前位置: > 一亩三分地:首页 > 网络学院 > 网络编程 > PHP专区 > php深入/精通 > 发现一个发送mime邮件的类。
热门文章排行
热门文章排行 检查email地址格式的代码(01-11)
PHP操作文件问答(01-11)
PHP安装攻略:安装并配置PHP(10-23)
PHP的十个高级技巧 4(10-23)
PHP控制语句(10-12)
精采文章排行
精采文章排行 PHP连接MYSQL的两种方法(11-15)
PHP和MySQL开发的8个技巧(10-23)
PHP安装攻略:安装并配置PHP(10-23)
php+mysql扎实个人基本功(10-23)
PHP编程常用技巧四则(10-23)
技术专题推荐
网管论坛交流
 

发现一个发送mime邮件的类。 

作者:佚名   来源:本站教程   点击:   日期:2007-01-11

<?php

    // 存成 "mime_mail.inc" 檔案

    class mime_mail {

        var $parts;
        var $to;
        var $from;
        var $headers;
        var $subject;
        var $body;


        /*
         *     void mime_mail()
         *     類別建構者
         */

        function mime_mail() {
            $this->parts = array();
            $this->to = "";
            $this->from = "";
            $this->subject = "";
            $this->body = "";
            $this->headers = "";
        }


        /*
         *     void add_attachment(string message,
         *                         [string name],
         *                         [string ctype])
         *     將附加物(附檔)加入郵件物件
         */

        function add_attachment($message, $name = "",
                    $ctype = "application/octet-stream") {
            $this->parts[] = array( "ctype" => $ctype,
                            "message" => $message,
                        "encode" => $encode,
                        "name" => $name);
        }


        /*
         *     void build_message(array part)
         *     建立 multipart 郵件的訊息部份
         */

        function build_message($part) {
            $message = $part["message"];
            $message = chunk_split(base64_encode($message));
            $encoding = "base64";
            return "Content-Type: " . $part["ctype"] .
                ($part["name"] ? "; name=\"".$part["name"]."\"" : "") .
                "\nContent-Transfer-Encoding: $encoding\n\n$message\n";
        }


        /*
         *     void build_multipart()
         *     建立一封 multipart 郵件
         */

        function build_multipart() {
            $boundary = "b" . md5(uniqid(time()));
            $multipart = "Content-Type: multipart/mixed; " .
                     "boundary = $boundary\n\n" .
                     "This is a MIME encoded message.\n\n--$boundary";

            for ($i = sizeof($this->parts) - 1; $i >= 0; $i--) {
                $multipart .= "\n" . $this->build_message($this->parts[$i]) . "--$boundary";
            }

            return $multipart . "--\n";
        }


        /*
         *     string get_mail()
         *     傳回已組合完成的郵件
         */

        function get_mail($complete = true) {
            $mime = "";
            if (!empty($this->from))
                $mime .= "From: " . $this->from . "\n";
            if (!empty($this->headers))
                $mime .= $this->headers . "\n";

            if ($complete) {
                if (!empty($this->to))
                    $mime .= "To: $this->to\n";
    &nbs

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·将OICQ数据转成MYSQL数据 ·用PHP实现ODBC数据分页显示一例
·php生成WAP页面 ·PHP与Javascript的两种交互方式
·PHP+Javascript模拟Matrix画面 ·WHOIS类的修改版

   文章评论:(条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:一分  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。