Я использую API-интерфейс Google Maps Static для запроса изображения как PNG. В настоящее время я сохраняю это изображение в Файловой системе, а затем я отправляю это изображение с помощью PHPMailer своим клиентам. После отправки всех писем изображение удаляется из файловой системы.
Мое намерение заключается в том, чтобы сохранить мне шаг сохранения изображения в файловую систему и просто использовать объект изображения из памяти и отправить его через Mail. Но, похоже, PHPMailer должен иметь изображение в файловой системе, чтобы использовать его.
Что я сейчас делаю:
Запросить изображение из Static API
$URL = "http://maps.googleapis.com/maps/api/staticmap?center=Albany,+NY&zoom=13&scale=false&size=600x300&maptype=roadmap&format=png&visual_refresh=true"; $image = file_get_contents($URL);
Сохраните изображение в файловой системе и отправьте его на мою почтовую функцию
$fp = fopen('../../img/staticMap/staticMap.png', 'w+'); fputs($fp, $image); fclose($fp); unset($image); $file = "../../img/staticMap/staticMap.png"; $notifications->notifySingleUser($file); //Call my Mail Function
с$fp = fopen('../../img/staticMap/staticMap.png', 'w+'); fputs($fp, $image); fclose($fp); unset($image); $file = "../../img/staticMap/staticMap.png"; $notifications->notifySingleUser($file); //Call my Mail Function
Вставить изображение в Mail
$mail = new PHPMailer(); $mail->CharSet = 'UTF-8'; $mail->IsHTML(true); $mail->AddEmbeddedImage($file, "staticMap"); $mail->Body = "<img width="600" height="300" src="cid:staticMap">";
Я также сделал некоторое исследование вложений PHPMailer, делая это без физического файла , но здесь они просто говорят, как это сделать с помощью AddAttachment, но я хочу добавить AddMmbeddedImage. Я также пробовал это, Почта отправляется без ошибок, но с ним нет изображения.
Возможно ли это? Если да, как я могу его заархивировать?
Любая помощь приветствуется.