2012-01-17 29 views
4

gmailのようなフィルタを使用して検索を行うにはどうすればよいですか。特定のメールアドレスからの特定のラベルまたはメールのリストを持つ電子メールのリストを取得するように。私は文書でそれを見つけることができませんでした。Zend IMAP検索とフィルタ

注:認証にoAuthを使用します。私はこれが検索とは関係ないことを願っています。

+0

これに関するアップデートはありますか? Zend Oauth IMAPクラスを使用して、日付フィルタ付きの受信トレイにメッセージを取得します。 – Adnan

+0

@Adnan Zend Imapクラスに検索機能を追加する必要があります。 http://framework.zend.com/issues/browse/ZF-8858以下の答えを見てください。 imap_search()で使用するフィルタを使用できます。 –

答えて

3

Gmailのラベルは実際(IMAPの観点から)フォルダなので、ラベル付きのすべてのメールを取得するには、この名前のフォルダにメールをリストするだけです。

は、あなたが「文書化されていない」機能 search()を( Zend/Mail/Imap/Protocol.phpを参照)を使用でき、検索が、メソッドのコメントを表示するには: This method is currently marked as internal as the API might change and is not safe if you don't take precautions.は、だからではなくPHPの独自の imap_search()機能を使用することができます。

また、Zend Frameworkの機能要求ZF-8858も参照してください。

+1

'Zend/Mail/Storage/Imap.php'に行き、' $ _protocol'を 'public'に設定しなければなりませんでした。それで '$ mail - > _ protocol-> search(array( 'ALL'));'私のために働いた。 –