Melok
Новичок
Помогите с кодировками
Прошу помощи у знающих.
Суть проблемы:
Нужно автоматически узнавать кодировку текста и в случае необходимости переводить в нужную.
У меня все скрипты и база работают на кодировке utf-8, по поступила задача написать скрипт, где с партнерских сайтов собирать статистику , ну например ссылки, и отображать в общем файле отчета.
Таким образом, на одной странице отчета попадают записи в разных кодировках, понятное дело нечитабельны.
Задача привеси весь отчет в нужную кодировку utf-8.
Для этой задачи можно использовать стандартные функции mb_detect_encoding() и iconv()
Пробую так:
...
for ($i=0; $i< count($matches[0]); $i++) {
$text= $matches[0][$i];
$kodirovka=mb_detect_encoding($text,"ASCII, JIS, UTF-8");
echo $kodirovka."==".$text."<br>";
}
Пример реализации http://melok.com.ua/temp/14.php
Но в результате, почему-то, текст ( в данном случае title к банеру) выводится в кодировке сp1251, хотя mb_detect_encoding() опознала его как UTF-8.
Вопрос почему описания банера распознано как UTF-8, хотя на самом деле он в кодировке сp1251?
Прошу помощи у знающих.
Суть проблемы:
Нужно автоматически узнавать кодировку текста и в случае необходимости переводить в нужную.
У меня все скрипты и база работают на кодировке utf-8, по поступила задача написать скрипт, где с партнерских сайтов собирать статистику , ну например ссылки, и отображать в общем файле отчета.
Таким образом, на одной странице отчета попадают записи в разных кодировках, понятное дело нечитабельны.
Задача привеси весь отчет в нужную кодировку utf-8.
Для этой задачи можно использовать стандартные функции mb_detect_encoding() и iconv()
Пробую так:
...
for ($i=0; $i< count($matches[0]); $i++) {
$text= $matches[0][$i];
$kodirovka=mb_detect_encoding($text,"ASCII, JIS, UTF-8");
echo $kodirovka."==".$text."<br>";
}
Пример реализации http://melok.com.ua/temp/14.php
Но в результате, почему-то, текст ( в данном случае title к банеру) выводится в кодировке сp1251, хотя mb_detect_encoding() опознала его как UTF-8.
Вопрос почему описания банера распознано как UTF-8, хотя на самом деле он в кодировке сp1251?