我從數據庫中提取電子郵件作爲字符串存儲。我需要解析這些電子郵件以提取他們的附件。我想一定有一些圖書館可以很容易地做到這一點,但我找不到任何圖書館。如何使用PHP提取郵件atachment?
2
A
回答
3
PEAR::Mail::mimeDecode應該做你在找什麼
1
這可以使用Zend框架
也許這個例子中的的Zend_Mail組件,它也可以在文檔中找到做幫助:
// get the first none multipart part
$part = $message;
while ($part->isMultipart()) {
$part = $message->getPart(1);
}
echo 'Type of this part is ' . strtok($part->contentType, ';') . "\n";
echo "Content:\n";
echo $part->getContent();
我不知道但是你怎麼能告訴Zend Mail從字符串中讀取數據,也許需要做一些工作來完成這個任務,但是你會有一個完整的庫,可以完成你想要的和更多的工作(比如讀取主題等)。
編輯:
我剛做了它第二次看,並意識到,你所要做的就是寫一個自己的存儲實現(子類Zend_Mail_Storage_Abstract),這不應該是這麼難的事。
我認爲這是您將得到的最乾淨的解決方案,儘管需要一點努力才能使其工作。
如果您正在尋找更快捷的解決方案,其他人可能會幫助您。
希望有所幫助。
0
E-mail附件的MIME編碼和使用頭添加到郵件正文。 PEAR MIME解碼包將執行您所需的任務: http://pear.php.net/package/Mail_mimeDecode
3
PHP有一個MailParse擴展,比使用原生PHP的PEAR替代方法要快得多。
這裏是一個封裝此擴展庫:
http://code.google.com/p/php-mime-mail-parser/
實施例:
// require mime parser library
require_once('MimeMailParser.class.php');
// instantiate the mime parser
$Parser = new MimeMailParser();
// set the email text for parsing
$Parser->setText($text);
// get attachments
$attachments = $Parser->getAttachments();
1
PhpMimeParser - 解析多部分MIME消息(附件,內嵌圖像,BASE64,引號的可打印)https://github.com/breakermind/PhpMimeParser您可以從文件,字符串中剪切MIME消息。
// Load .eml mime message from file
$str = file_get_contents('mime-mixed-related-alternative.eml');
// Format output
echo "<pre>";
// Create object MimeParser
$m = new PhpMimeParser($str);
// Show Emails
print_r($m->mTo);
print_r($m->mFrom);
print_r($m->mBcc);
print_r($m->mCc);
// Show Message
echo $m->mSubject;
echo $m->mHtml;
echo $m->mText;
print_r($m->mInlineList);
// Show Files
print_r($m->mFiles);
相關問題
- 1. PHP,提取郵件地址
- 2. 如何使用php提取.zip文件
- 3. 如何使用PHP郵件
- 4. 如何使用git提取提交者的電子郵件?
- 5. 如何使用PHP從csv文件中提取所有電子郵件?
- 6. 提取附件管道郵件到PHP
- 7. Php電子郵件附件提取
- 8. 如何使用Powershell從.msg文件中提取郵件標題?
- 9. 當使用PHP郵件從PHP郵件獲取smtp錯誤
- 10. 如何從電子郵件中使用asp.net或php提取信息
- 11. 如何在使用php郵寄郵件之前清理郵件
- 12. PHP郵件提交
- 13. 使用php獲取郵件的附件使用php
- 14. PHP郵件():如何獲取有關使用PHP郵件發送郵件失敗的更多信息()。
- 15. 如何從Outlook郵件中提取表
- 16. 如何使用jsoup提取電子郵件ID?
- 17. 如何使用IMAP C客戶端源提取未讀郵件
- 18. 如何使用ruby gmail gem提取郵件正文?
- 19. 如何僅使用IMAP提取Python的電子郵件正文?
- 20. 如何使用PHP從完整電子郵件文本中提取電子郵件和名稱?
- 21. 如何使用確認郵件(PHP)
- 22. 如何使用php pear郵件
- 23. 如何加快PHP郵件? (使用CRON)
- 24. 如何在PHP中使用郵件()
- 25. 如何使用php提取超鏈接
- 26. 如何使用PHP從HTML提取hrefs
- 27. 使用PHP讀取文件和郵寄
- 28. 使用CURL來讀取郵件? - PHP
- 29. 使用cURL獲取outlook郵件php
- 30. 使用PHP郵件
謝謝,正是我所需要的。 – Arkh 2009-08-06 13:10:30