用PHP完成POP3郵件的解碼(一)
發(fā)表時間:2023-08-17 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]初步認識郵件的源文件(作者:陳俊清 2000年10月24日 15:08) 本文簡要說明了通過POP3協(xié)議收取郵件、MIME郵件的解碼的原理;針對收取和MIME解碼,提供了兩個實用的PHP類,并提供...
初步認識郵件的源文件
(作者:陳俊清 2000年10月24日 15:08)
本文簡要說明了通過POP3協(xié)議收取郵件、MIME郵件的解碼的原理;針對收取和MIME解碼,提供了兩個實用的PHP類,并提供了使用的樣例。分為郵件收取、MIME解碼兩個部分。我們已經(jīng)向您介紹過了郵件的收取,現(xiàn)在讓我們來為您介紹本文的解碼部。
在上一篇里,我們已經(jīng)完成了一個用PHP通過POP3收取郵件的實例,可是在使用這個類的時候,相信你已經(jīng)看到了,很多的郵件收下來是一堆亂碼,自己根本看不懂!是的,F(xiàn)在的郵件大部分都已經(jīng)經(jīng)過了編碼,需要一個解碼的過程才能變成我們習慣的文字、圖片、或是其它的附件。
郵件的源文件
首先,我們來看一段簡單的郵件的源文件:(在Foxmail中,選中郵件,點選“查看源文件”就會看到這樣的些內(nèi)容了)
From: <boss_ch@netease.com>
To: <boss_ch@china.com>
Subject: =?gb2312?B?xOO6w6Oh?=
Date: Sun, 8 Oct 2000 20:28:45 +0800
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_NextPart_000_0007_01C03166.5B1E9510"
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.00.2919.6700
X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2919.6700
This is a multi-part message in MIME format.
------=_NextPart_000_0007_01C03166.5B1E9510
Content-Type: text/plain;
charset="gb2312"
Content-Transfer-Encoding: base64
w7vT0MLSwuuwyaO/DQo=
------=_NextPart_000_0007_01C03166.5B1E9510
Content-Type: text/html;
charset="gb2312"
Content-Transfer-Encoding: base64
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwv
L0VOIj4NCjxIVE1MPjxIRUFEPg0KPE1FVEEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PWdi
MjMxMiIgaHR0cC1lcXVpdj1Db250ZW50LVR5cGU+DQo8TUVUQSBjb250ZW50PSJNU0hUTUwgNS4w
MC4yOTIwLjAiIG5hbWU9R0VORVJBVE9SPg0KPFNUWUxFPjwvU1RZTEU+DQo8L0hFQUQ+DQo8Qk9E
WSBiZ0NvbG9yPSNmZmZmZmY+DQo8RElWPjxGT05UIHNpemU9Mj7Du9PQwtLC67DJo788L0ZPTlQ+
PC9ESVY+PC9CT0RZPjwvSFRNTD4NCg==
------=_NextPart_000_0007_01C03166.5B1E9510-
這樣的一段郵件,我想沒有人能看得懂的。不要急,我們來仔細看看這些內(nèi)容。
From: <boy@netease.com>
To: <boss_ch@china.com>
這個是好理解的,郵件由boy@netease.com發(fā)送,收件人是boss_ch@china.com,這些標簽的含義我們基本可從字面上理解到,像Date:Sun, 8 Oct 2000 20:28:45 +0800表示的是時間,X-Priority: 3表示的是郵件的優(yōu)先級,X-Mailer: Microsoft Outlook Express 5.00.2919.6700表示的是郵件發(fā)送器的名字,這里用的是Outllook 5,不過,這些東西跟郵件的內(nèi)容是沒有很大關(guān)系的。我們不需要深究。