我读过的一些关于EML创建的问题和文章
- 如何使用openssl验证电子邮件中的DKIM签名
- PHP库生成EML电子邮件文件
- https://www.icosaedro.it/phplint/mailer-tutorial/index.html
- https://coderedirect.com/questions/25620/php-library-to-generate-eml-email-files(这个很有趣,但需要扩展DKIM签名(
- https://www.example-code.com/phpExt/smtp_loadEmlAndSend.asp(仅SMTP发送(
- https://community.apachefriends.org/f/viewtopic.php?t=79968&p=270281(这对Linux非常有效,还没有找到与Windows等效的版本(
- 在XAMPP for Linux中使用mailtodisk/mailoutput(很好的概念(
- https://swiftmailer.symfony.com/docs/introduction.html(这是Symfony提供的,尚不清楚在没有Symfony的情况下是否有效,但已不再维护(
我似乎找不到任何独立的class
文件来生成*.eml
的内容,这些文件可以存储到文件中(使用file_put_contents
(,也可以临时存储到variable
中。
这个想法是,我可以在服务器端创建*.eml
文件。我可以使用内容来验证DKIM签名,而不必实际发送email
。
我确实找到了一个库phplint,它可以满足我的需求,但它太大了,无法满足我的需要(635 Files, 53 Folders 7.84 MB (8,224,768 bytes)
(。
$m = new Mailer();
$m->setSubject("This is the subject");
$m->setFrom("my@mydomain.com", "My Name");
$m->addAddress("you@yourdomain.com", "Your Name");
$m->setTextMessage("This is the text body of the message.");
$m->sendByStream($out_string, TRUE);
$message_as_string = $out_string->__toString();
上面的代码段使用下面的classes
来生成消息。
[180] => iticosaedroemailMailer
[181] => iticosaedroioIOException
[182] => iticosaedroutilsStringBuffer
[183] => iticosaedroioOutputStream
[184] => iticosaedroioStringOutputStream
[185] => iticosaedroemailField
[186] => iticosaedroemailMIMEAbstractPart
[187] => iticosaedroemailHeader
[188] => iticosaedroemailMIMEPartMemory
[189] => iticosaedroemailEOLFilter
[190] => iticosaedroutilsRandom
我一直在寻找github,以及PHPClasses。但我找不到任何与我需要的东西相关的东西(如果有足够的研究,我可能会自己建造,但我不想重新发明轮子(。
理想情况下,我正在寻找PHPMailer的扩展,它可以将EMAIL流式传输到File或String Variable(。我还需要class
或function
来处理linux
和windows
。
如果有人能找到一个图书馆或指引我正确的方向,我将不胜感激
我想我已经找到了我一直在寻找的东西https://symfony.com/doc/current/mailer.html
$email = (new Email())
->from('hello@example.com')
->to('you@example.com')
//->cc('cc@example.com')
//->bcc('bcc@example.com')
//->replyTo('fabien@example.com')
//->priority(Email::PRIORITY_HIGH)
->subject('Time for Symfony Mailer!')
->text('Sending emails is fun again!')
->html('<p>See Twig integration for better HTML integration!</p>');
echo "<pre>";
print_r($email->toString());
echo "</pre>";
尽管我仍在寻找单一类的解决方案,而不是下载膨胀软件来完成单一任务。