如何序列化Zend_Mail_Message?

时间:2012-08-24 06:07:22

标签: php zend-framework zend-mail

我从IMAP查询中获得了几个Zend_Mail_Message个对象。 现在我想单独序列化每条消息。

然而,似乎很简单:

serialize($message);

不起作用,因为邮件有附件(multipart),而且部件没有被序列化。

那么,如何序列化一个完整的Zend_Mail_Message对象,包括部分(附件)?

1 个答案:

答案 0 :(得分:0)

我明白了。基本上Zend_Mail_Message具有缓存机制,因此当您从消息中获取一部分时,它不再向IMAP服务器请求该部分。

所以关键是在序列化之前预热缓存:

$i=0;
while ($part = $message->getPart($i) {
  $i++;
}

$serialization=serialize($message); //now it saves the whole message.