php保存附件到指定服务器,如何在PHP中将电子邮件附件保存到服务器?
兩天的大部分時間里,我一直在與PHP的電子郵件閱讀功能作斗爭.我正在編寫一個腳本來讀取郵箱中的電子郵件并將所有附件保存到服務器上.如果你曾經做過類似的事情,你可能會理解我的痛苦:PHP在電子郵件方面表現不佳!
我已連接到POP3服務器,我可以迭代文件.這是代碼的大致輪廓:
if (!$mbox = imap_open ("{myserver.com:110/pop3/notls}INBOX", "u", "p"))
die ('Cannot connect/check mail! Exiting');
if ($hdr = imap_check($mbox))
$msgCount = $hdr->Nmsgs;
else
die ("Failed to get mail");
foreach ($overview as $message) {
$msgStruct = imap_fetchstructure($mbox, $message->msgno);
// if it has parts, there are attachments that need reading
if ($msgStruct->parts) {
foreach ($msgStruct->parts as $key => $part) {
switch (strtoupper($part->subtype)) {
case 'GIF': case 'JPEG':case 'PNG':
//do something - but what?!
break;
}
}
}
}
我已經標記了我被卡住的地方.我可以使用,imap_fetchbody($mbox, $message->msgno, $key+1)但這會得到一堆像這樣的數據:
/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8S
EhEPERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEU
Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAAR
CAHiAi0DASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREA
...
我認為這是MIME數據.我需要它作為一個圖像!我已經看到幾個班級在互聯網上爆炸聲稱要做必要的魔法.我不能讓他們中的任何一個工作.我不明白為什么我這么難找到!
簡而言之,我正在尋找可以將原始MIME字符串轉換為實際數據的東西.
總結
以上是生活随笔為你收集整理的php保存附件到指定服务器,如何在PHP中将电子邮件附件保存到服务器?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 老师计算机传帮带工作总结,传帮带工作总结
- 下一篇: dell服务器报内存配置不正确,DELL