著者: Kartic Krishnamurthy 翻訳者: limodou
友達や顧客に退屈なテキスト通知や手紙を送信することにうんざりしていませんか?電子メールに添付ファイルを送信したり、HTML を埋め込んだりすることを検討したことがありますか?
答えはMIMEです。次の数ページでは、MIME の基本、MIME 準拠のメッセージの作成、そして MIME 準拠の電子メールの送信を実装する動作する PHP クラスについて説明します。呼び出しスクリプト、呼び出し元などは、開発するクラスを使用するスクリプトを指し、クライアント/MUA などは、メール読み取りクライアントまたはメール使用エージェントを指します。
MIMEの基本
MIMEはMultiPurpose Internet Mail Extensionsの略です。 MIME は、基本的なテキスト指向のインターネット メール システムを拡張して、メッセージにバイナリ添付ファイルを含めるようにします。
MIME は、RFC 822 がメッセージ本文の内容にわずかな制限を課しているという事実を利用しています。唯一の制限は、単純な
ASCII テキストのみを使用できることです。したがって、MIME メッセージは、いくつかの特別な 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:
データを適切に処理できるように、データのタイプを定義します。有効なタイプは、テキスト、画像、オーディオ、ビデオ、
アプリケーション、マルチパート、メッセージです。バイナリ添付ファイルは application/octet-
stream という名前にする必要があることに注意してください。このヘッダーの使用例としては、image/jpg、application/mswork、multipart/mixed などがあります。
Content-Transfer-Encoding:
これは、データに対して実行されるエンコードを記述し、添付ファイルをデコードするためにクライアント/MUA によって使用されるため、すべてのヘッダーの中で最も重要です。添付ファイルごとに、7 ビット、8 ビット、バイナリ、quoted-printable、base64、およびカスタム エンコード方式のいずれかを使用できます。 7 ビット エンコードは、US ASCII 文字セットで使用される一般的に使用されるエンコード方法です。つまり、そのまま維持されます。 8 ビットおよび
バイナリ エンコーディングは通常は使用されません。人間が読める標準テキストの場合、形式に影響を与えるゲートウェイを介して送信が保護される場合、
は quoted printable を使用できます。 Base64 は、通常、バイナリの非テキスト データに使用されるエンコーディングを決定する際に簡単に使用できる汎用メソッドです。 7 ビット以外のデータは、インターネット メール ゲートウェイを通過できるように、パターン
でエンコードする必要があることに注意してください。
Content-ID:
このヘッダーは、Content-Type が message/external-body または multipart/alternative の場合に便利です。この記事の範囲を超えています。
Content-Description:
これはオプションのヘッダーです。これは、情報の内容を自由にテキストで説明したものです。説明には us-ascii コードを使用する必要があります。
Content-Disposition:
添付ファイルをインラインで表示するか個別の添付ファイルとして表示するかを決定するためのヒントをクライアント/MUA に提供するために使用される実験的なヘッダー。
MIME-Version ヘッダーを除く、MIME セクション ヘッダー (実際の MIME 添付ファイル部分に表示されるヘッダー) には、上記のヘッダー フィールドのいずれかを含めることができます。 MIME ヘッダーがチャンクの一部である場合、それはメッセージの本文全体に適用されます。たとえば、Content-Transfer-Encoding がメッセージ ヘッダーに表示される場合は、メッセージ本文全体に適用されますが、MIME セグメントに表示される場合は、そのセグメントにのみ適用されます。
http://www.bkjia.com/PHPjc/509093.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/509093.html
技術記事
著者: Kartic Krishnamurthy 翻訳者: limodou 友人や顧客に退屈なテキスト通知や手紙を送信することにうんざりしていませんか?添付ファイルやメールで送信することを考えたことはありますか...