2009-10-21 216 views
1

我需要處理一封電子郵件收件箱,監控它是否含有特定主題行的郵件。如果發現匹配,我需要獲取正文內容,操作並插入數據庫。理想情況下,將郵件標記爲已讀,並將其移至另一個IMAP文件夾。使用PHP處理IMAP電子郵件

我打探PHP文件imap_open(http://us2.php.net/imap_open),並找到了一個鏈接http://www.linuxscope.net/articles/mailAttachmentsPHP.html#_jmp0_

之前,我太遠了,我想知道是否有人知道現有的PHP類,是對基礎知識的好包裝的我在尋找:

IMAP:

  • 連接
  • 列表文件夾
  • 個列表郵件
  • 讀的郵件 - 從,到,主題,正文
  • 將郵件移動到服務器文件夾
  • 讀/未讀狀態

謝謝!

+0

如果您使用CakePHP,這可能會對您有所幫助: https://github.com/kvz/cakephp-emails-plugin – Chaim 2011-04-07 19:16:11

回答

1

我沒有使用它,但發送郵件,但看起來Zend_Mail組件會讓你至少大部分的方式。它似乎不支持在服務器上移動消息,但您可以簡單地擴展它。

0

我試過Zend_Mail IMAP並有一些高點和低點。我可以連接和閱讀,移動電子郵件,但它是很有問題的。您可以檢查主題或發件人,解析標題,通過解析不同的部分來獲取附件。

Zend_Mail_Protocol_Imap沒有使用任何PHP imap/ext函數。 (Why?)使用數千封電子郵件閱讀文件夾速度很慢。文件夾的內部順序實際上並不是按時間順序排列的,這很奇怪。可能取決於存儲的實施方式(我解析了google.pro帳戶)。有時連接關閉unexpectedly並調試它很重。

還有一個Pear_IMAPv2,這是測試版,我甚至無法成功安裝。另一種方法是安裝imap/ext並自己做所有事情。

祝你好運。