不,它不可能
PHP使用引擎蓋下的馬克·克里斯賓的C-客戶端庫做了IMAP的工作。在c-client庫中,mail.c中有一個不推薦使用的方法mail_criteria,它將IMAP搜索字符串轉換爲c-client搜索程序。 mail_criteria在過去8年左右已被棄用,因此從未更新過以支持IMAP4搜索語法。因此,像IMAP2中不存在的搜索字詞從未在mail_criteria函數中獲得支持。以下是它以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-client在其SEARCHPGM結構中支持OR,它也不會在已棄用的mail_criteria函數中解析OR。
而PHP仍然使用mail_criteria來解析搜索查詢。因此,直到c客戶端程序庫不否認mail_criteria並使其符合IMAP4或PHP編寫自己的IMAP搜索分析程序,您將被任何IMAP2支持。其中不包括OR。
imap_search不會與多個標準一起使用
還有其他方法嗎? – Red
使用循環。搜索他們並把結果放在數組 – shail
我猜對了,但是表演呢? – Red