如何使用IMAP和PHP将标签应用于Gmail收件箱项目

时间:2014-05-21 10:29:23

标签: php gmail label imap data-access

我想在我的收件箱中为某些电子邮件应用标签,我使用此代码:

$hostname = '{imap.gmail.com:993/imap/ssl}';

$inbox = $hostname.'INBOX';
$mbox = imap_open($inbox, $username, $password) 
    or die('Cannot connect to Gmail: ' . imap_last_error());

$label_mailbox = $hostname.'test_label';
$copy_success = imap_mail_copy($mbox, '1,2,3', $label_mailbox);

if ($create_success) {
    echo 'Label added.';
} else {
    die('Cannot create mailbox: '.imap_last_error());
}

/* close the connection */
imap_close($mbox);

但结果是:

    Cannot copy to mailbox : [TRYCREATE] No folder {imap.gmail.com:993/imap/ssl}test_label (Failure)

有人可以告诉我为什么它不起作用?我确信这个标签存在。

1 个答案:

答案 0 :(得分:3)

解决方案是仅使用没有主机名的标签名称。例如,不是

{imap.gmail.com:993/imap/ssl}test_label

但是

test_label