5

我知道如何读取服务器上的文件并将其附加到 PHP 中的电子邮件,但我想知道是否可以附加由我的脚本创建但未在服务器上创建的文件(有点像临时文件)。

因此,在内存中创建文件并将其附加到电子邮件中。

奖励:可能还需要创建多个文件,这对服务器来说是否太多了?我不是在说 GB,而是像 5 个文件,每个文件 1000 行?

4

1 回答 1

11

是的,您可以这样做,只要您使用的任何电子邮件库都支持它。如果你不使用一个,你应该是!
不,除非您在 1993 年购买,否则 5 个文件对您的服务器来说不会太多。

希望您的库不需要文件引用 - 您可以执行以下操作:

$myEmail->attachData('file.name', 'mime/type', $data);

如果它确实需要文件路径,那么您可以使用php://memory文件:

 $f = fopen('php://memory/myfile', 'w');
 fwrite($f, '...');
 fclose($f);

$myEmail->attach('php://memory/myFile');
于 2009-10-05T20:02:37.273 回答