Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Кодировка
Форумы портала PHP.SU » » Кодировки и все смежное » Кодировка

Страниц (1): [1]
 

1. Medallion - 28 Апреля, 2013 - 08:48:32 - перейти к сообщению
Собственно, есть imap подключение.
И такой вот небольшой код:
PHP:
скопировать код в буфер обмена
  1.  
  2. $overview = imap_fetch_overview($mail, 3);
  3.  
  4. while( list($key,$val) = each($overview)) {
  5.         echo  $val->subject);
  6. }
  7.  


Должно вывести: Это тема сообщения.
Но выводит: =?koi8-r?B?/NTPINTFzcEg08/Pwt3FzsnR?=

Я так понимаю, это кодировка KOI8-U.
Пробовал использовать функцию iconv()
Не работает, при этом она работает, когда я читаю тело сообщения,
через функцию imap_body.

Будут ли какие-то советы по этому поводу.
Проверяю в Денвере, в конфиге на денвере установлен UTF-8, а также
в скрипте в header UTF-8 и т.д.
(Добавление)
Проблему решил.
Вот решение:
PHP:
скопировать код в буфер обмена
  1.  
  2. $overview = imap_fetch_overview($mail, 3);
  3.  
  4. while( list($key,$val) = each($overview)) {
  5.         echo  imap_utf8($val->subject);
  6. }
  7.  


Вот только не пойму, почему в случае, когда читаешь тело сообщение через функцию imap_body, imap_utf8 не помогает, а помогает iconv?
2. alexiy - 28 Апреля, 2013 - 09:31:53 - перейти к сообщению
Medallionhttp://php.net/manual/en/function.imap-utf8.php

 

Powered by ExBB FM 1.0 RC1