PHP IMAP-无法识别框

PHP IMAP-无法识别框,php,gmail,imap,imap-open,Php,Gmail,Imap,Imap Open,我正在创建一个PHP应用程序,将来自电子邮件帐户的所有电子邮件保存在我的数据库中 当我连接到gmail帐户并使用imap_列表功能时,我会得到以下框: array { [0]=> "{imap.gmail.com:993/ssl}INBOX" [1]=> "{imap.gmail.com:993/ssl}[Gmail]/Caixote do Lixo" [2]=> "{imap.gmail.com:993/ssl}[Gmail]/Com estrela" [3]=> "

我正在创建一个PHP应用程序,将来自电子邮件帐户的所有电子邮件保存在我的数据库中

当我连接到gmail帐户并使用imap_列表功能时,我会得到以下框:

 array {
[0]=> "{imap.gmail.com:993/ssl}INBOX"
[1]=> "{imap.gmail.com:993/ssl}[Gmail]/Caixote do Lixo"
[2]=> "{imap.gmail.com:993/ssl}[Gmail]/Com estrela"
[3]=> "{imap.gmail.com:993/ssl}[Gmail]/Correio enviado"
[4]=> "{imap.gmail.com:993/ssl}[Gmail]/Importante"
[5]=> "{imap.gmail.com:993/ssl}[Gmail]/Rascunhos"
[6]=> "{imap.gmail.com:993/ssl}[Gmail]/Spam"
[7]=> "{imap.gmail.com:993/ssl}[Gmail]/Todo o correio" }
这些盒子是葡萄牙语的。当我连接到另一个帐户时,框中有英文名称。这意味着我没有办法知道哪一个箱子是垃圾箱,或发送箱,例如


是否有方法正确识别每个框?

也许您应该检查每个文件夹中的邮件数?通常,工作垃圾箱或发送框包含消息。

这个问题有点棘手。我通过使用套接字连接而不是使用PHP原生imap函数连接到imap客户机来解决这个问题。通过这种方式,我可以获得所需的特殊用途属性。

即使没有消息,我仍然需要获得该框。在我得到盒子后,它将与服务器同步。例如,当我从应用程序中删除消息时,无法识别框是一个问题。由于我不知道这些盒子中的哪一个是垃圾箱,我不知道将已删除的邮件发送到哪里。请查看邮件标题。或者允许用户选择文件夹。您是说没有办法通过代码识别邮箱?是的,有这样一种方法:RFC6154不支持RFC6154的电子邮件客户端如何?找不到这些邮箱。不支持IMAP的邮件客户端甚至无法连接到IMAP服务器。您能给我一个代码示例,说明如何使用php IMAP函数获取这些特殊用途的邮箱吗?不,我不能。这就是为什么我发表评论,而不是回答。但是您使用的库是开源的,因此您可以添加6154支持。毕竟,这就是开源得到改进的原因。