我正在尝试将字符串作为纯文本文件附加到swift邮件程序邮件中,如doc中所述:
$debug_data = 'Exception: ' . $e_message . PHP_EOL;
$debug_data .= $file . ': ' . $line . PHP_EOL;
$debug_data .= $trace;
$attach = Swift_Attachment::newInstance($debug_data, 'debug.txt', 'text/plain');
$message->attach($attach);
但这给了我这个错误:
Error in exception handler: fopen(Content-Type: text/plain; name=debug.txt Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=debug.txt 1ay9wdWJsaWMvaW5kZXgucGhwKDQ5KTog SWxsdW1pbmF0ZVxGb3VuZGF0aW9uXEFwcGxpY2F0aW9uLT5ydW4oKQojMTMge21haW59): failed to open stream: No such file or directory in /vendor/swiftmailer/swiftmailer/lib/classes/Swift/ByteStream/FileByteStream.php:138
任何想法?!
答案 0 :(得分:1)
似乎你试图在Laravel中使用它,它有一个attachData
方法,它不会调用fopen
。您可以像下面的代码一样使用它
$message->attachData($debug_data, 'debug.txt');
答案 1 :(得分:0)
尝试这样的事情:
$attachment = Swift_Attachment::newInstance()
->setFilename('debug.txt')
->setContentType('text/plain')
->setBody($debug_data);