Есть код:
mb_internal_encoding("UTF-8");
$emailAddress = 'ххх';
$emailPassword = 'ххх';
$emailHost = 'imap.yandex.ru';
$emailPort = 993;
$connectImap = imap_open('{imap.yandex.ru:993/imap/ssl}INBOX', $emailAddress, $emailPassword) or die ("Error:" . imap_last_error());
// проверим ящик на наличие новых писем
$newLeters = imap_search($connectImap, 'NEW');
// если есть новые письма
if($newLeters){
// перебираем все письма
foreach($newLeters as $oneLeter){
// получаем заголовок
$header = imap_header($connectImap, $oneLeter);
// достаем ящик отправителя письма
$mailFrom = $header->sender[0]->mailbox . "@" . $header->sender[0]->host;
echo "От кого: $mailFrom <br/>";
// получаем тему письма
$subject = $header->subject;
echo "Тема письма: $subject <br/>";
// получаем содержимое письма
$textMail = quoted_printable_decode(imap_fetchbody($connectImap, $oneLeter, 1));
// $textMail = imap_fetchbody($connectImap, $oneLeter, 1);
echo "Тело письма: $textMail <br/>";
echo "<hr/>";
print_r(mb_detect_encoding($textMail));
}
}else{
echo "Нет новых писем";
}
// закрываем соединение
imap_close($connectImap);
Заголовок, отправитель печатается корректно. Вместо содержимого письма http://prntscr.com/licvhl
Как получить текст письма?
Дело в том что тело письма кодируется в base64 , соответственно вам чтобы посмотреть нужно сделать декодирование. В вашем случае в теле письма вот это
http://gurevich.agency
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости