我從數據庫中提取電子郵件作爲字符串存儲。我需要解析這些電子郵件以提取他們的附件。我想一定有一些圖書館可以很容易地做到這一點,但我找不到任何圖書館。如何使用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從csv文件中提取所有電子郵件?
- 3. 如何使用Powershell從.msg文件中提取郵件標題?
- 4. 當使用PHP郵件從PHP郵件獲取smtp錯誤
- 5. 如何從電子郵件中使用asp.net或php提取信息
- 6. PHP郵件提交
- 7. PHP郵件():如何獲取有關使用PHP郵件發送郵件失敗的更多信息()。
- 8. 如何使用ruby gmail gem提取郵件正文?
- 9. 如何使用IMAP C客戶端源提取未讀郵件
- 10. 如何使用jsoup提取電子郵件ID?
- 11. 如何僅使用IMAP提取Python的電子郵件正文?
- 12. 如何加快PHP郵件? (使用CRON)
- 13. 使用CURL來讀取郵件? - PHP
- 14. 使用PHP郵件()
- 15. 提取使用PHP
- 16. 如何獲取電子郵件使用PHP IMAP
- 17. 你如何讓PHP讀取POP郵件?
- 18. 附件郵件使用PHP郵件()?
- 19. 如何提取PHP
- 20. 如何使用Java郵件獲取未答覆的郵件?
- 21. 如何使用PHP從HTML文件中提取所有文本?
- 22. 如何使用AngularJS從PHP文件中提取數據
- 23. 如果提交表單提交php郵件給用戶
- 24. php郵件功能 - 郵件獲取/
- 25. 如何使用XP提取HTML,如YQL使用PHP?
- 26. 如何獲取郵箱我用PHP源
- 27. 用PHP提取CAB文件
- 28. 如何從PHP文件中提取HTML?
- 29. 使用php提取xml文件集中的內容使用php
- 30. 如何使用Python提取硬件ID?
謝謝,正是我所需要的。 – Arkh 2009-08-06 13:10:30