Home  >  Article  >  php教程  >  发现一个发送mime邮件的类。

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

WBOY
WBOYOriginal
2016-06-13 10:27:271123browse

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"].""" : "") . " Content-Transfer-Encoding: $encoding $message "; } /* * void build_multipart() * 建立一封 multipart 郵件 */ function build_multipart() { $boundary = "b" . md5(uniqid(time())); $multipart = "Content-Type: multipart/mixed; " . "boundary = $boundary " . "This is a MIME encoded message. --$boundary"; for ($i = sizeof($this->parts) - 1; $i >= 0; $i--) { $multipart .= " " . $this->build_message($this->parts[$i]) . "--$boundary"; } return $multipart . "-- "; } /* * string get_mail() * 傳回已組合完成的郵件 */ function get_mail($complete = true) { $mime = ""; if (!empty($this->from)) $mime .= "From: " . $this->from . " "; if (!empty($this->headers)) $mime .= $this->headers . " "; if ($complete) { if (!empty($this->to)) $mime .= "To: $this->to "; if (!empty($this->subject)) $mime .= "Subject: $this->subject "; } if (!empty($this->body)) $this->add_attachment($this->body, "", "text/plain"); $mime .= "MIME-Version: 1.0 " . $this->build_multipart(); return $mime; } /* * void send() * 寄出這封信(最後一個被呼叫的函式) */ function send() { $mime = $this->get_mail(false); mail($this->to, $this->subject, "", $mime); } } // 類別結束 ?>

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn