Как мне прочитать файлы Unicode для Windows через php и сохранить их в базе данных utf-8? - PullRequest
2 голосов
/ 17 ноября 2011

Редактор реестра Windows создал файлы Unicode Windows (UTF-16-le) при экспорте раздела реестра. Я пытаюсь найти лучший способ импортировать эти файлы в базу данных mysql с использованием PHP, чтобы впоследствии их можно было снова загрузить как файл в формате Юникод?

Когда я импортирую их в базу данных, я использую file_get_contents() и просто сохраняю их в столбце utf-8. Когда я экспортирую их, я сначала использую mb_convert_encoding($row['reg'], 'UTF-16') и выдаю заголовки для загрузки файла. Когда я открываю их в Windows, содержимое просто искажается.

Есть мысли о том, как правильно с этим справиться?

1 Ответ

2 голосов
/ 08 декабря 2011

Думал, что поделюсь решением, которое смог найти.Хитрость заключалась в том, чтобы использовать UTF-16LE в качестве оригинальной кодировки.

mb_convert_encoding(file_get_contents($file), 'UTF-8', 'UTF-16LE');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...