Я написал код для анализа файла, разделенного табуляцией, и импорта его в таблицу MySQL. Файл имеет кодировку UTF-8, как и таблица MySQL.
Импорт работает, но когда я просматриваю данные в поле таблицы, каждый второй символ отображается как UTF-8. заменяющий символ �. Например, число 4308817 в необработанном файле отображается в базе данных как «4�3�0�8�8�1�7”. В данных у меня есть символы UTF-8 (например, ë и т. д.), так что это необходимо.
Я пробовал разные вещи с utf8_encode, decode, mb_convert_encoding, и т. д., и, кажется, ничто не заставляет их отображаться без символов �.
$lines = file($dir . '/' . $file);
foreach ($lines as $line_num => $line) {
$arr = explode("\t", $line);
if($line_num > 0) {
$idx = 0;
$AddSQL = "INSERT INTO `$table` VALUES(";
foreach ($arr as $field) {
$value = $arr[$idx++];
$AddSQL .= "\"" . str_replace('"', '\"', trim($value)) . "\", ";
}
$AddSQL = substr($AddSQL, 0, strlen($AddSQL) - 2);
$AddSQL .= ")";
$dbconn->query($AddSQL);
}
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... ile-in-php
Символы замены UTF-8 между каждым символом при чтении файла в PHP ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Пытаюсь записать файлы ppm, но между каждым символом появляются невидимые пустые места
Anonymous » » в форуме C++ - 0 Ответы
- 8 Просмотры
-
Последнее сообщение Anonymous
-