Как декодировать содержимое тела IMAP

Я хочу расшифровать электронную почту, которую я получаю в папке «Входящие», поэтому я написал:

$message = quoted_printable_decode(imap_fetchbody($inbox, $email_number, 1));
dd($message);

                        $doc = new \DOMDocument('1.0', 'UTF-8');
                        $internalErrors = libxml_use_internal_errors(true);
                        $doc->loadHTML($message);
                        $doc->saveHTML();
                        $xpath = new \DOMXPath($doc);

но $message - это закодированная строка, например:

"""
IApRdWFuZG9vIdgsdfsdfsdfsdfsdfdsgBhcnRuZXIuCkNsaWNrIGhlcmUg\r\n
aWYgdGhpcyBlbWFpbfhjfghfhfghfghfghcmx5LgpRdWFuZG9vCkxvZ2luOiBM\r\n
b25kb24gU3RlYWtob3VzZSBDby4gLSBDaGVsc2VhCiANCllvdSBoYXZlIGEgbmV3IHJlc2VydmF0\r\n
aW9uLg0KWW91IGhhdmUgYSBuZXcgY29uZmlybWVkIHJlc2VydmF0aW9uIGZyb20gUXVhbmRvbyAo\r\n
... ... ... etc.

Как я могу декодировать эту строку и создать DOM, который я могу использовать? Любая идея?

Я написал это некоторое время назад в основном для GMAIL, он не полный, но может дать вам некоторые идеи Гитхаб В частности, это файл Результаты, который содержит материал для расшифровки электронных писем.

ArtisticPhoenix 15.02.2019 18:46

1. Это base64, а не кавычки. 2. Попросите того, кто отправляет вам электронное письмо, установить правильные заголовки Content-Encoding: в своих электронных письмах, и библиотека PHP IMAP должна правильно его декодировать.

Sammitch 15.02.2019 19:29

Я попробовал $message = imap_base64(imap_fetchbody($inbox, $email_number, 1)); но я не получаю HTML-код, а только текст, например: "Нажмите здесь, если это письмо не отображается должным образом.\n HotelNews\n Логин: Лондон - Челси\n

Aleks Per 15.02.2019 22:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
120
0

Другие вопросы по теме