Прикрепление файла к PHPMailer

В настоящее время я работаю над проектом, в котором файлы хранятся в БД в виде больших двоичных объектов. Мне нужно прикрепить файл к электронному письму и отправить его через PHPMailer. Я знаком с $mail->addAttachment(), однако эта функция, кажется, принимает только путь к файлу, которого у меня нет. Мне было интересно, есть ли способ манипулировать блобом и передать эту функцию?

Я ценю любые предложения, спасибо заранее!

Следующее успешно создает диалоговое окно «Сохранить как» файла, который мне нужно прикрепить:

header("Content-disposition: attachment; filename={$filename}.{$file_ext}");
header("Content-type: application/octet-stream");
echo $pdf['data'];
exit;

person AnchovyLegend    schedule 04.07.2014    source источник
comment
Наиболее очевидным решением является сохранение большого двоичного объекта в файл.   -  person Musa    schedule 05.07.2014
comment
Musa, спасибо за ответ, да, я думал: сохранить файл, прикрепить файл, отправить по электронной почте, а затем удалить файл. Тем не менее, кажется немного избыточным. Если нет более простого прямого решения, я выберу его.   -  person AnchovyLegend    schedule 05.07.2014


Ответы (1)


Метод addStringAttachment способен обработать такой случай. Согласно его документу:

* Add a string or binary attachment (non-filesystem).
* This method can be used to attach ascii or binary data,
* such as a BLOB record from a database.
person Synchro    schedule 05.07.2014