Laravel-excel: [ВОПРОС] Значение ячейки возвращается как ложь

Созданный на 27 сент. 2017  ·  3Комментарии  ·  Источник: Maatwebsite/Laravel-Excel

Я использую Laravel Excel 2.1. Laravel 5.4.3.

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

Вот пример первой строки файла: 11/10/2016 11:35,91,241,Dundee Students Association,Liar Bar,dusa-2988,Payment,�1.80,�0.00,�1.80 . на самом деле \ufffd .

Проблема касается только трех последних строк. Когда я читаю файл:

Excel::filter('chunk')->load($file_path)->chunk(250, function($sheets_collection)
{
    foreach ($sheets_collection as $current_sheet) {
        foreach ($current_sheet as $current_row) {
            // process $current_row
        }
    }
}, 'UTF-8');

$ current_row содержит правильные значения для всего, кроме трех последних ячеек, которые содержат только false . Вместо того, чтобы ошибаться, я хотел бы получить строки.

Однако, если я удалю все только из первой строки, он будет отлично работать не только для первой строки, но и для остальных!
Первая строка читается как следующий массив: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-2988","Payment",1.8,0,1.8] .
Вторая строка читается как следующий массив: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-3461","Payment","\ufffd1.10","\ufffd0.00","\ufffd1.10"] . Все последующие строки читаются аналогично второй строке.
Я не могу очистить первую строку для каждого файла, который планирую обработать, поэтому есть ли способ настроить Laravel-Excel для правильного извлечения значения из ячейки в виде строки?

Самый полезный комментарий

@ marijnz0r Большое спасибо!
У меня была такая проблема с символом °.
Чтобы решить свою проблему, я сделал это:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

Все 3 Комментарий

Та же проблема возникает у меня при использовании таких символов, как и é . Вы уже нашли решение?
Изменить: изменение кодировки символов на windows-1252 сработало для меня.

@ marijnz0r Большое спасибо!
У меня была такая проблема с символом °.
Чтобы решить свою проблему, я сделал это:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

Очень помогите!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги