2011-08-17 8 views
0

私は平文を使ってphpmailerから送られた電子メールを持っています。交換サーバーがユニコード文字を平文メールに挿入しますか?

このメールがphp mail()によって送信されると、正確なメールが届きます。電子メールがSmall Business Server上のExchange経由で送信されると、一部の場所にユニコード文字が挿入されているように見えます。電子メールプログラムで受信したソースコード例:

PHPのメール:

MIME-Version: 1.0 
Content-Transfer-Encoding: 8bit 
Content-Type: text/plain; charset="utf-8" 

Dear J, 

This is confirmation of your registration. 

Event: Green City Dialogues: Toward a sustainable built environment in Christchurch (2):  Green City Dialogues 2 
Date: Monday, 19 September 2011 05:15 pm - 08:00 pm 
Attendee: J D 

Exchangeサーバー:UTF-8で

MIME-Version: 1.0 
Content-Transfer-Encoding: quoted-printable 
Content-Type: text/plain; charset="utf-8" 
X-TM-AS-Product-Ver: SMEX-10.1.0.1137-6.500.1024-18326.006 
X-TM-AS-Result: No--12.011100-0.000000-31 
X-TM-AS-User-Approved-Sender: Yes 
X-TM-AS-User-Blocked-Sender: No 
X-DSPAM-Check: by xxx.xxx.xxx on Wed, 17 Aug 2011 11:59:06 +1200 
X-DSPAM-Result: Innocent 
X-DSPAM-Processed: Wed Aug 17 11:59:06 2011 
X-DSPAM-Confidence: 0.5596 
X-DSPAM-Probability: 0.0000 

Dear xxxxx, 

This is confirmation of your registration. 

Event:=A0Green City Dialogues: Toward a sustainable built environment in Ch= 
ristchurch (2): Green City Dialogues 2 
Date: Monday, 19 September 2011 05:15 pm - 08:00 pm 
+0

だから何が問題なのですか? – vascowhite

答えて

0

Unixサーバーを介した平文メールにもa0文字が含まれていることがわかりました。ソースコードビューであっても、Gmailによってフィルタリングされています。

問題だった

がhtml_entity_decode($結果[ 'introtext'])

修正

がhtml_entity_decode($結果[ 'introtext']、ENT_COMPAT 'UTF-8')

1

Uユニコードの略です。あなたのコードでこれを使用しているので:

Content-Transfer-Encoding: 8bit 
Content-Type: text/plain; charset="utf-8" 

...あなたは既にUnicode文字を送信しています。

実際には=A0です。ヘッダーによると:

Content-Transfer-Encoding: quoted-printable 
Content-Type: text/plain; charset="utf-8 

...これは、Unicode文字のプレーンなASCII表現です。どちらも問題ありません.Exchangeは電子メールメッセージを修正するだけで、8ビットメッセージを処理できない電子メールシステムを正常に通過できるようにしています。実際には、最大限の互換性を実現したい場合は、do it yourselfにする必要があります。いずれの場合も、メッセージの内容は変わりません。それはちょうどを送信する一時的な符号化です。

0

コンテンツ転送 - エンコード:8ビット

SMTPは、(通常は)8ビットのデータをサポートしていません。

私はphpmailer()に慣れていませんが、私は8bitメールを作成しなければならないと非常に驚いています。

MS-Exchangeは私の好きなMTAではないかもしれませんが、このインスタンスではメールを正しくクリーンアップしているようです。

AFAIK「phpメール」と呼ばれるMTAはありません。実際にMS-Exchangeで処理された電子メールを実際に比較しているかどうかはわかりません。

関連する問題