如何使用条件OR来搜索带有imap_search的电子邮件 - PHP IMAP库

Bob*_*zza 1 php email imap

我需要在imap_search()命令中使用OR语句.

我发现此库中不支持条件OR. Imap_search错误报告链接必须有一种方法可以使用条件OR搜索电子邮件,我该怎么做呢?我不知道我从哪里开始.

我希望能做什么:

$boxes = imap_search($connection,'SINCE "08-Mar-2011" AND (BODY "bobby" OR BODY "robert" OR BODY "bob"');
Run Code Online (Sandbox Code Playgroud)

dka*_*arp 5

您的SEARCH语法错误,因为运算符是前缀而不是中缀.应该是正确的搜索字符串'SINCE "08-Mar-2011" OR BODY "bobby" OR BODY "robert" BODY "bob"'.

但是,如果PHP根本不支持ORimap_search-和你的链接表示他们不这样做,尽管它的C-客户端支持了近10年-那么你就必须做有条件或应用程序.跑

$box_bobby  = imap_search($connection, 'SINCE "08-Mar-2011" BODY "bobby"');
$box_robert = imap_search($connection, 'SINCE "08-Mar-2011" BODY "robert"');
$box_bob    = imap_search($connection, 'SINCE "08-Mar-2011" BODY "bob"');
Run Code Online (Sandbox Code Playgroud)

然后合并三个结果集.