首頁 php教程 php手册 用PHP发送MIME邮件(一)

用PHP发送MIME邮件(一)

Jun 21, 2016 am 09:10 AM
ascii content internet multipart

mime

已经厌倦了给你的朋友和客户发送那些单调乏味的文本通知和信件了吗?曾经考虑过发送附件或在邮中嵌入HTML吧

  答案就是MIME。接下来的几页解释了MIME的基础知识,创建符合MIME的信息,然后用一个可以工作的PHP
类结束,这个类实现了发送符合MIME邮件。注意对调用脚本,调用者等等的引用表示使用了将要开发的类的
脚本,客户程序/MUA等等表示邮件阅读的客户程序或邮件使用代理程序。

一些MIME基础
  MIME表示多用途Internet邮件扩允协议。MIME扩允了基本的面向文本的Internet邮件系统,以便可以在
消息中包含二进制附件。

  MIME利用了一个事实就是,RFC 822在消息体的内容中做了一点限制:唯一的限制就是只能使用简单的
ASCII文本。所以,MIME信息由正常的Internet文本邮件组成,文本邮件拥有一些特别的符合RFC
822的信息
头和格式化过的信息体(用ASCII
的子集来表示的附件)。这些MIME头给出了一种在邮件中表示附件的特别
的方法。

MIME信息的剖析
  一个普通的文本邮件的信息包含一个头部分(To: From:
Subject: 等等)和一个体部分(Hello Mr.,
等等)。在一个符合MIME的信息中,也包含一个信息头并不奇怪,邮件的各个部分叫做MIME段,每段前也缀
以一个特别的头。MIME邮件只是基于RFC 822邮件的一个扩展。然而它有着自已的RFC规范集。


头字段
  MIME头根据在邮件包中的位置,大体上分为MIME信息头和MIME段头。(译者:MIME信息头指整个邮件
的头,而MIME段头只每个MIME段的头。)

MIME信息头有:

MIME-Version:
这个头提供了所用MIME的版本号。这个值习惯上为1.0。
Content-Type:
它定义了数据的类型,以便数据能被适当的处理。有效的类型有:text,image,audio,video,
applications,multipart和message。注意任何一个二进制附件都应该被叫做application/octet-
stream。这个头的一些用例为:image/jpg, application/mswork,multipart/mixed,这只是很少的
一部分。
Content-Transfer-Encoding:
这是所有头中最重要的一个,因为它说明了对数据所执行的编码方式,客户/MUA
将用它对附件进行解
码。对于每个附件,可以使用7bit,8bit,binary ,quoted-printable,base64和custom中的一种编
码方式。7bit编码是用在US ASCII字符集上的常用的一种编码方式,也就是,保持它的原样。8bit

binary编码一般不用。对人类可读的标准文本,如果传输要经过对格式有影响的网关时对其进行保护,
可以使用quoted printable 。Base64是一种通用方法,在需要决定使用哪一种编码方法时,它提供了
一个不用费脑子的选择;它通常用在二进制,非文本数据上。注意,任何非7bit
数据必须用一种模式
编码,这样它就可以通过Internet邮件网关!
Content-ID:
如果Content-Type是message/external-body或multipart/alternative时,这个头就有用了。它超出了本文的范围。
Content-Description:
这是一个可选的头。它是任何信息段内容的自由文本描述。描述必须使用us-ascii码。
Content-Disposition:
一个试验性的头,它用于给客户程序/MUA提供提示,来决定是否在行内显示附件或作为单独的附件。
  MIME段头(出现在实际的MIME附件部分的头),除了MIME-Version头,可以拥有以上任何头字段。如果一个MIME头是信息块的一部分,它将作用于整个信息体。例如,如果Content-Transfer-Encoding显示在信息(指整个信息)头中,它应用于整个信息体,但是如果它显示在一个MIME段里,它"只能"用于那个段中。



本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

一個ascii字元佔幾個位元組 一個ascii字元佔幾個位元組 Mar 09, 2023 pm 03:49 PM

一個ascii字元佔1個位元組。 ASCII碼字元在電腦中採用7位元或8位元二進位編碼表示,並保存在一個位元組中,即一個ASCII碼佔用一個位元組。 ASCII碼可分為標準ASCII碼和擴展ASCII碼,其中標準ASCII碼也叫基礎ASCII碼,使用7位二進制數(剩下的1位二進制為0)來表示所有的大寫和小寫字母,數字0到9.標點符號,以及在美式英語中使用的特殊控製字元。

什麼是公網ip 什麼是公網ip Sep 27, 2021 am 10:30 AM

公網ip是指用公網連接Internet上的非保留位址,可以與Internet上的其他電腦隨意互相存取。網路上的每台計算機都有一個獨立的IP位址,該IP位址唯一確定網路上的一台計算機,這個IP位址就是指的公有IP位址。

如何在沒有 Internet 連線的情況下設定 Windows 11 如何在沒有 Internet 連線的情況下設定 Windows 11 Apr 15, 2023 am 10:46 AM

從內部版本22557及更高版本開始,Windows11需要Internet連接才能完成首次設置,也稱為家庭版和專業版的開箱即用體驗(OOBE),儘管有一種方法可以繞過此要求完全。由於微軟希望用戶將他們的電腦連接到他們的微軟帳戶,該公司正在對最初的Windows11設定進行更改,這將使得幾乎不可能在沒有網路連線的情況下繼續執行全新安裝。或者,如果設定偵測到裝置沒有網路連接,您將被傳送到糟糕,您遺失了網路連線畫面。如果您按一下重試選項,您將看到再次連線到Internet

internet的通訊協定是什麼? internet的通訊協定是什麼? Dec 24, 2020 pm 02:53 PM

Internet採用的主要通訊協定是“TCP/IP協定”,TCP/IP傳輸協議,即傳輸控制/網路協議,也叫作網路通訊協定;它是在網路的使用中的最基本的通訊協議,TCP/ IP傳輸協定對網際網路中各部分進行通訊的標準和方法進行了規定。

win11無法上網的問題如何解決?處理win11電腦無法連線到internet的方法指南 win11無法上網的問題如何解決?處理win11電腦無法連線到internet的方法指南 Jan 29, 2024 pm 08:57 PM

我們在使用電腦的時候都會連接到網絡,有了網絡我們才能上網衝浪,近期也有不少的用戶們在詢問小編win11無法連接到internet怎麼解決?用戶可以直接的打開系統給出的最佳匹配服務應用來進行設置,下面就讓本站來為用戶們來仔細的介紹一下win11電腦無法訪問internet的解決方法吧。 win11電腦無法存取internet的解決方法方法一:可以按下Win+S組合鍵,或點選底部任務欄旁的搜尋圖標,開啟Windows搜尋視窗。在搜尋框中輸入"服務",然後點選開啟系統給予的最佳配對服務應用程式。方法二

快速了解 PHP 中的 ASCII 數值轉換 快速了解 PHP 中的 ASCII 數值轉換 Mar 28, 2024 pm 06:42 PM

PHP中的ASCII數值轉換是程式設計中常會遇到的問題。 ASCII(AmericanStandardCodeforInformationInterchange)是一種用於將字元轉換為數字的標準編碼系統。在PHP中,我們經常需要透過ASCII碼來實現字元和數字之間的轉換。本文將介紹如何在PHP中進行ASCII數值轉換,並給予具體的程式碼範例。一、將字符

如何刪除臨時Internet文件 如何刪除臨時Internet文件 Dec 06, 2023 am 10:56 AM

刪除臨時Internet檔案步驟:1、按下win+r開啟“執行”,在執行對話方塊中輸入:%temp%指令,點選確定或回車,開啟使用者帳號臨時資料夾;2、開啟Temp資料夾後按下Ctrl+A鍵,選取全部臨時文件,右鍵點擊,在右鍵選單中點選「刪除」;3、若出現個別無法刪除的臨時檔案重新啟動電腦即可刪除。

internet的基本結構與技術起源於什麼 internet的基本結構與技術起源於什麼 Dec 15, 2020 pm 04:48 PM

internet的基本架構與技術起源於ARPANET。 ARPANET是電腦網路技術發展中的一個里程碑,它的研究成果對促進網路技術的發展起到了重要的作用,並未internet的形成奠定了基礎。 arpanet(阿帕網)為美國國防部高級研究計劃署開發的世界上第一個運營的數據包交換網絡,它是全球互聯網的始祖。

See all articles