proudmore
@proudmore

Как сделать, чтобы fgets правильно работал на кодировке UTF-16LE?

Есть csv в UTF-16LE, не могу его корректно переконвертировать в UTF-8.
Перепробовал уйму разных способов, использовал как функцию iconv(), которая выкидывала исключения на мультибайтовые символы, так и mb_convert_encoding ($line, 'UTF-8', 'UTF-16LE'), которая выдает иероглифы, вместо кирилицы.
У меня подозрение, что можно пользоваться и iconv, если решить проблему в неверным количеством байт в строке.
  • Вопрос задан
  • 177 просмотров
Решения вопроса 1
proudmore
@proudmore Автор вопроса
Если вдруг кому-то будет полезно - fgets на кодировке UTF-16LE ломает переводы строк.
Для решения проблемы воспользовался системной утилитой iconv через shell_exec()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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