zbateson / mail-mime-parser

An email parser written in PHP
https://mail-mime-parser.org/
BSD 2-Clause "Simplified" License
441 stars 56 forks source link

Fatal error Message::parse() method doesn't exist. #206

Closed CaMer0n closed 1 year ago

CaMer0n commented 1 year ago

This example below from the documentation (https://mail-mime-parser.org/#basicsIntroduction) throws a fatal error. Message::parse doesn't exist.

use ZBateson\MailMimeParser\Message;

$message = Message::parse($handleOrStreamOrString, true);
$subject = $message->getHeaderValue('Subject');
$text = $message->getTextContent();
$html = $message->getHtmlContent();
$from = $message->getHeader('From');
$fromName = $from->getName();
$fromEmail = $from->getEmail();

$to = $message->getHeader('To');
// first email address can be accessed directly
$firstToName = $to->getName();
$firstToEmail = $to->getEmail();

foreach ($to->getAllAddresses() as $addr) {
    $toName = $to->getName();
    $toEmail = $to->getEmail();
}

$attachment = $message->getAttachmentPart(0);
$fname = $attachment->getFilename();
$stream = $attachment->getContentStream();
$attachment->saveContent('destination-file.ext');

Replacing it with Message::from() appears to fix it.