PHP imap как правильно декодировать тело письма?

Я разработал систему электронной почты самостоятельно, используя PHP imap и все работает отлично, за исключением писем, написанных на арабском языке, я перепробовал все функции декодирования и ничего не работает. Я получил предмет для работы отлично с помощью imap_utf8 но не тело письма.

Вот как выглядит тело письма:

�
رحباهاي الرسالة �

Это мой код:

$text = imap_fetchbody($imap, $uid, $partNumber, FT_UID);
switch ($structure->encoding) {
case 3:
return imap_base64($text);
case 4:
return imap_qprint($text);
default:
return $text;
}

Если кто-нибудь может помочь с этим вопросом. Спасибо

-1

Решение

Попробуй использовать кавычко печати-декодирования () функционировать как заявлено Вот

0

Другие решения

Я предлагаю вам взглянуть на это: https://github.com/mantisbt-plugins/EmailReporting/blob/master/core/Mail/Parser.php
Он также использует материал, который вы использовали, но он добавляет кодировку символов поверх него.

Тематическое кодирование символов может происходить встроенным. Для тел электронной почты один набор символов для всего тела

В приведенном сценарии используется пакет груши, а не расширение IMAP, но в зависимости от вашего ввода оно должно быть примерно таким же

Надеюсь это поможет

0

По вопросам рекламы [email protected]