gpt4 book ai didi

PHP:IMAP 将电子邮件移至垃圾箱

转载 作者:行者123 更新时间:2023-12-03 09:18:01 63 4
gpt4 key购买 nike

我试图将电子邮件从收件箱移至垃圾箱,并编写了以下代码,该代码始终给出错误IMAP 命令复制中的错误:无效的消息集(0.000 + 0.000 秒)。

$stream = imap_open($hostname, $username, $password) or die('Cannot connect to mail: ' . imap_last_error());

if(imap_mail_move($stream, '4', 'INBOX.Trash') or die(imap_last_error())) {
echo '1';
}
else {
echo 'error';
}

这是我尝试过的不同变体

imap_mail_move($stream, '4', 'Trash')
imap_mail_move($stream, 4 , 'Trash')
imap_mail_move($stream, '4', 'INBOX/Trash')
imap_mail_move($stream, 4 , 'INBOX/Trash')

最佳答案

例如,它可能包含该名称的国家版本。另外,一些 Gmail 帐户在英文版本中使用“[Gmail]/Bin”。您应该使用 CommonFolders 类来识别文件夹:

$server = '{imap.gmail.com:993/ssl}';
$connection = imap_open($server, '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="77020412052819161a1237101a161e1b5914181a" rel="noreferrer noopener nofollow">[email protected]</a>', 'password');
$mailboxes = imap_list($connection, $server, '*');
var_dump($mailboxes);

在巴西葡萄牙语中,您可以看到类似以下内容:

0 => string '{imap.gmail.com:993/ssl}INBOX' (length=29)
1 => string '{imap.gmail.com:993/ssl}[Gmail]/Com estrela' (length=43)
2 => string '{imap.gmail.com:993/ssl}[Gmail]/E-mails enviados' (length=48)
3 => string '{imap.gmail.com:993/ssl}[Gmail]/Importante' (length=42)
4 => string '{imap.gmail.com:993/ssl}[Gmail]/Lixeira' (length=39)
5 => string '{imap.gmail.com:993/ssl}[Gmail]/Rascunhos' (length=41)
6 => string '{imap.gmail.com:993/ssl}[Gmail]/Spam' (length=36)
7 => string '{imap.gmail.com:993/ssl}[Gmail]/Todos os e-mails' (length=48)

所以,我的巴西葡萄牙语垃圾是: '[Gmail]/Lixeira'

您需要将代码更改为垃圾箱。

imap_mail_move($stream,  4 , '[Gmail]/Lixeira');

学分: http://www.electrictoolbox.com/open-mailbox-other-than-inbox-php-imap/

关于PHP:IMAP 将电子邮件移至垃圾箱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35668180/

63 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com