Появилась задача отправки фейкового письма, для проверки и тестирования ящиков, с несуществующего адреса.
Помог обычный php mail.
Письмо с картинкой, будет отправлено на arddess@site.ru, а получатель увидит адрес отправки TEST@SITE.com
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');
$aTo = array();
$aTo[] = 'arddess@site.ru';
$subject = 'Re: Test 1';
$message = '
<html>
<style>
.class {
width: 190px;
height: 169px;
background-position: 0 0;
background-repeat: no-repeat;
background-image: url(\'data:image/png;base64,iVBOR/OZ3CINHXUdizgZc....ggg==\');
}
</style>
<body>
<div>Hello!</div>
<div class="class"></div>
</body>
</html>
';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: TEST@SITE.com <TEST@SITE.com>'. "\r\n";
echo $message. '<br />';
foreach($aTo as $sTo)
{
var_dump(mail($sTo, $subject, $message, $headers));
echo '<br />';
}
Не стоит добавлять в письмо ссылки, такие письма сразу пойдут в спам или даже не будут приняты почтовым сервером, но можно вставить картинку через css свойств background-image, как и показано в примере выше.