2014-03-05 61 views
0

我正在使用Pears郵件MIME發送帶有php附件的郵件。PHP郵件mime和Outlook 2010無標題附件

http://pear.php.net/package/Mail_Mime/redirected

看來後市重命名PDF文件爲「無題......」,但它工作正常使用Gmail,Hotmail服務等

此前這個問題,我有另一個問題,即Outlook中不會顯示文件爲PDF格式,並附上其作爲文本文件,除非我明確告訴MIME addAttachment文件類型

看到這裏的代碼:

if (endsWith($file,".pdf")) { 

    $mime->addAttachment($file,'application/pdf',basename($file)); 

} 
else { 

     $mime->addAttachment($file); 

} 

你可以看到上面我也嘗試設置addAttachment的第三個參數來設置文件名,但那也沒有奏效。所以這是一個趕上22日或者沒有設定文件類型,並有Outlook發送的txt文件或設置文件類型和Outlook重命名這些文件,以「無題」

回答

1

確定發現了展望沒有按

Outlook不重命名其他文件類型似乎不喜歡長文件名,縮短文件名的作品。

梨MIME發送一個長文件名頭破成幾部分是這樣的:

Content-Transfer-Encoding: base64 
Content-Type: application/pdf; 
name*0*=US-ASCII''THIDSO5749_010.901%20-%2013.95505142_GARUDA%20RETARGETI; 
name*1*=NG%20CPA%20CAMPAIGN_PT%20GARUDA%20INDONESIA%20%28PERSERO%29%20TBK; 
name*2*=._NOV2013.pdf 
Content-Disposition: attachment; 
filename*0*=US-ASCII''THIDSO5749_010.901%20-%2013.95505142_GARUDA%20RETAR; 
filename*1*=GETING%20CPA%20CAMPAIGN_PT%20GARUDA%20INDONESIA%20%28PERSERO; 
filename*2*=%29%20TBK._NOV2013.pdf; 
size=68426 

Outlook不能處理這一點,但它可以處理的格式:

Content-Type: application/pdf;name="a long filename.....pdf" 

不幸的是它似乎梨啞劇不能發送這種格式沒有編輯mime.php的核心代碼

所以我現在只發送較短的文件名