gzhegow
@gzhegow
aka "ОбнимиБизнесмена"

Как привести прикрепленный файл к UTF-8 через PHP?

Указанный ниже файл - это пример, выдаваемый ГУГЛ контактами для экспорта. Такие контакты переносятся в два клика с телефона на телефон.

По факту это вроде обычный CSV файл.
Когда я его открыл с помощь Хрома - хром сказал что это кодировка CP1252.
Попытавшись преобразовать его с помощью ICONV файл превратился в окончательную неразбериху.

Кто делал?
В данном случае я заранее не знаю какая кодировка входного файла, но хотелось бы работать с UTF-8 без ручных преобразований - скинул файл, запустил скрипт, получил файл на выходе.

Файл примера: https://yadi.sk/d/3qr3MUmJsrqrr

Делаю вот так:
// get file
$content = file_get_contents($filename);
$content = mb_convert_encoding($content, 'UTF-8', 'CP1252');


UPDATED
Сделал mb_detect_encoding для всего, чего нашел.
Определило как ISO-8859-1.

Прямое преобразование с двумя известными кодировками все еще приводит к кракозяблам.

UPDATED2
Только что уехала крыша. Половина файла в ISO, а половина в UTF-8!!!
Гугл показывает нам образцы качества, красоты и элегантности!
  • Вопрос задан
  • 233 просмотра
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
Файл в UTF-16LE.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы