/** * Create an instance from a stringified mail. * @param string $str the mail string * @return \vakata\mail\Mail the mail instance */ public static function fromString($mail) { $rtrn = new self(); $mail = $rtrn->parseParts($mail); foreach ($mail['head'] as $k => $v) { switch (strtolower($k)) { case 'to': $rtrn->setTo($v); break; case 'cc': $rtrn->setCc($v); break; case 'bcc': $rtrn->setBcc($v); break; case 'from': $rtrn->setFrom($v); break; case 'subject': $rtrn->setSubject($v); break; default: $rtrn->setHeader($k, $v); break; } } $rtrn->processPart($mail); return $rtrn; }
public static function fromArray(array $array) { $message = new self($array['subject']); if (null !== $array['sender']) { $message->setSender($array['sender']); } if (null !== $array['from']) { $message->setFrom($array['from']); } if (null !== $array['to']) { $message->setTo($array['to']); } if (null !== $array['replyTo']) { $message->setReplyTo($array['replyTo']); } if (null !== $array['cc']) { $message->setCc($array['cc']); } if (null !== $array['bcc']) { $message->setBcc($array['bcc']); } if (null !== $array['text']) { $message->setBodyWithAlternative($array['text'], $array['html']); } foreach ($array['customHeaders'] as $label => $valueList) { foreach ($valueList as $value) { $message->getHeaders()->addTextHeader($label, $value); } } return $message; }