ZF2阅读电子邮件附件

时间:2014-03-31 08:35:00

标签: email zend-framework2 email-attachments

我无法找到有关阅读电子邮件附件的任何文档。有谁能提出建议?

我正在使用Zend\Mail\Storage\Imap来阅读我的电子邮件文本,但我找不到任何获取附件的方法。

1 个答案:

答案 0 :(得分:0)

我找到了保存所有附件的方法:

$attachment_files = array();
foreach (new \RecursiveIteratorIterator($message) as $part) {
    try {
        if (strtok($part->contentType, ';') == 'text/plain' ||
            strtok($part->contentType, ';') == 'text/html') {
            $foundPart = $part;
        } else {
            $filename = $part->getHeaderField('Content-Description');
            $extention = pathinfo($filename, PATHINFO_EXTENSION);
            $new_filename = ROOT_PATH . '/data/tmp/' . uniqid() . '.' . $extention;
            $content = base64_decode($part->getContent());
            $fh = fopen($new_filename, 'w');
            fwrite($fh, $content);
            fclose($fh);
            $attachment_files[] = $new_filename;
        }
    }
    catch (\Exception $e) {
        // ignore
    }
}

文件名放在Content-Description标题中,我保存所有不是文本的部分。