这就是我使用的:
composer require php-mime-mail-parser/php-mime-mail-parser
Run Code Online (Sandbox Code Playgroud)
然后是 PHP:
$parser = new \PhpMimeMailParser\Parser();
$emailFile = 'myEmailFile.eml';
$parser->setText(file_get_contents($emailFile));
Run Code Online (Sandbox Code Playgroud)
然后,获取地址:
$toAddressesQ = $parser->getAddresses('to');
Run Code Online (Sandbox Code Playgroud)
或者身体:
$text = $parser->getMessageBody('text');
$html = $parser->getMessageBody('html');
Run Code Online (Sandbox Code Playgroud)
或者标题:
$subject = $parser->getHeader('subject');
Run Code Online (Sandbox Code Playgroud)
或者附件:
$attachments = $parser->getAttachments();
Run Code Online (Sandbox Code Playgroud)
有几种方法可以做到这一点。一种方法是简单地自己做,没有那么复杂。
否则,您可能需要查看 Mailparse 库:
http://php.net/manual/en/book.mailparse.php
还有这个:
http://code.google.com/p/php-mime-mail-parser/