如何使用barbushin imap类通过id获取邮件

时间:2014-06-19 10:19:38

标签: imap

我目前正在barbushin处理imap课程。它是互联网上唯一的PHP类,无论编码问题如何,我都可以找到它。感谢编码员。

我在表格中有一个消息列表。每条消息都发送一条消息ID作为GET(比如$ mid)。单击链接后,页面将变为视图页面。它应该打开该消息并显示相关内容吗?但事实并非如此。每条消息都有相同的内容(第1个内容)。该代码是为gmail设计的,但我将它用于我的客户端。而且它的工作。

这是一段代码:

require_once('../ImapMailbox.php');

define('EMAIL', 'my@domain.com');
define('PASSWORD', '*********');
define('ATTACHMENTS_DIR', dirname(__FILE__) . '/attachments');

$mailbox = new ImapMailbox('{imap.gmail.com:993/imap/ssl}INBOX', EMAIL, PASSWORD, ATTACHMENTS_DIR, 'utf-8');
$mails = array();

// Get some mail
$mailsIds = $mailbox->searchMailBox('ALL');
if(!$mailsIds) {
    die('Mailbox is empty');
}

$mailId = reset($mailsIds);
$mail = $mailbox->getMail($mailId);

var_dump($mail);
var_dump($mail->getAttachments());

原文在这里:https://github.com/barbushin/php-imap

1 个答案:

答案 0 :(得分:0)

最后,我找到了回家的路。根据脚本,有一行说“mailId”。这是直截了当的。

通过reset()将其设置为第一个数组。所以我唯一需要做的就是从中提取消息id($ mailId是一个id数组)。所以我只需在它后面添加一个数组。

$mailId=$mailsIds[$_GET[uid]];

虽然$_GET[uid]是从上一页发送的消息ID。