在瀏覽代碼和搜索文檔時,我一直無法找到任何東西。有沒有人能夠實現這一目標?您可以使用來自PHP IMAP庫的IMAP_SEARCH中的條件嗎?
http://php.net/manual/en/function.imap-search.php
在瀏覽代碼和搜索文檔時,我一直無法找到任何東西。有沒有人能夠實現這一目標?您可以使用來自PHP IMAP庫的IMAP_SEARCH中的條件嗎?
http://php.net/manual/en/function.imap-search.php
不,你不能。 (很難相信吧?)
PHP使用Mark Crispin的c-client庫來完成它的IMAP工作。在c客戶端庫中,在mail.c
中有一個不推薦使用的方法mail_criteria
,它將IMAP搜索字符串轉換爲c客戶端搜索程序。 mail_criteria
has been deprecated for the past 8 years or so and, as such, was never updated to support the IMAP4 search syntax。因此,像OR
這樣的搜索字詞在IMAP2中不存在,它從未在mail_criteria
函數中獲得支持。這裏所有的IT支持與「O
」啓動項:
case 'O': /* possible OLD, ON */
if (!strcmp (criterion+1,"LD")) f = pgm->old = T;
else if (!strcmp (criterion+1,"N"))
f = mail_criteria_date (&pgm->on,&r);
break;
OR
不在名單上。因此即使c客戶端支持OR
的SEARCHPGM
結構,它也不會在已棄用的mail_criteria
函數中解析OR
。
和PHP still uses mail_criteria
to parse search queries。因此,直到C客戶端程序庫未取消使用mail_criteria
並使其符合IMAP4或PHP編寫自己的IMAP搜索解析器時,您都會被支持的任何IMAP2卡住。 Which doesn't include OR
.