Автоматическое преобразование CSV из ISO-8859-2 в UTF-8

У меня есть довольно много CSV-файлов, которые, к сожалению, закодированы в iso-8859-2 (согласно скобкам). Я хотел бы перебрать эти файлы с помощью PHP и конвертировать их.

Я нашел https://csv.thephpleague.com/9.0/converter/charset/, но способ использования функции конвертации мне неизвестен.

Их пример кода

use LeagueCsvCharsetConverter;

$csv = new SplFileObject('/path/to/french.csv', 'r');
$csv->setFlags(SplFileObject::READ_CSV | SplFileObject::SKIP_EMPTY);

$encoder = (new CharsetConverter())->inputEncoding('iso-8859-15');
$records = $encoder->convert($csv);

Пока это мой код, который является частью формы для загрузки одного файла и сохранения содержимого в базе данных для тестирования. Это, конечно, сохраняет текст в неправильном формате.

$db = ConnectDB::getConnection('address_dtb');

$sql = " ... ";

$stmt = $db->prepare($sql);

$rowCount = 0;

$temp_name = $_FILES['adresscsv']['tmp_name'];

$file_handle = fopen($temp_name, 'r');

while (($items = fgetcsv($file_handle, 1000, '')) !== FALSE) {

    if($flag) { $flag = false; continue; }

    $stmt->execute($items);

    $rowCount++;

}

fclose($file_handle);

ConnectDB::closeConnection($db);

Как правильно использовать вышеуказанную библиотеку PHP CSV для перебора локально сохраненных файлов в цикле for для автоматизации процесса?

Всего 1 ответ

Автоматический диспенсер мыльной пены от xiaomi.


Вам не нужно использовать библиотеку. В PHP есть функция, которая может сделать это


Есть идеи?

10000