PHP IMAP收件箱消息循环

PHP IMAP收件箱消息循环,php,gmail,imap,Php,Gmail,Imap,我已经编写了一个PHP脚本,它连接到我的Gmail帐户,并在“收件箱”文件夹中循环消息。但是,我想了解收件箱文件夹中存在的每封邮件的“标签”。换句话说,我想知道收件箱中的每封邮件还存在哪个IMAP文件夹?通过这种方式,我计划编写一个小的StatsPHP脚本,它将显示来自每个标签的消息。例如,我的Gmail IMAP文件夹是 收件箱(75封邮件) 个人信息(21839条) 商务(129条信息) 朋友(4321条信息) Facebook(293条消息) 收件箱中的所有75封邮件也都标有其他文件夹

我已经编写了一个PHP脚本,它连接到我的Gmail帐户,并在“收件箱”文件夹中循环消息。但是,我想了解收件箱文件夹中存在的每封邮件的“标签”。换句话说,我想知道收件箱中的每封邮件还存在哪个IMAP文件夹?通过这种方式,我计划编写一个小的StatsPHP脚本,它将显示来自每个标签的消息。例如,我的Gmail IMAP文件夹是

  • 收件箱(75封邮件)
  • 个人信息(21839条)
  • 商务(129条信息)
  • 朋友(4321条信息)
  • Facebook(293条消息)
收件箱中的所有75封邮件也都标有其他文件夹。我想显示这75封邮件中有多少属于“个人”或“业务”文件夹。PHP imap函数是否可以实现这一点


谢谢。

Imap将邮件存储在邮箱中,每个文件夹对应一个不同的邮箱。 您需要单独检查文件夹,请查看以下示例:

$boxes = imap_getmailboxes($mbox, "{mail.domain.com}", "*");

foreach($boxes as $val) {
$piece1 = explode("}", $val->name);
$piece2 = explode(".", $piece1[1]);

if (empty($piece2[1])) {echo '<div><b>Inbox</b></div>';} 

 }
$box=imap_getmailboxes($mbox,{mail.domain.com},“*”);
foreach($val形式的方框){
$piece1=分解(“}”,$val->name);
$piece2=分解(“.”,$piece1[1]);
if(空($piece2[1]){echo'Inbox';}
}

您解决过这个问题吗?我也在寻找答案。
$mbox
变量的作用是什么?或