У меня есть файл CSV с некоторыми строками, в которых есть текст / слова, содержащие специальный символ, например ñ
, произошло то, что когда я попытался импортировать файл, слова с символами выше или похожими будут преобразованы в 0 . Не уверен, связано ли это с кодированием, я нашел несколько решений в StackOverflow, но ни одно из них, похоже, не работает.
Я использую ToModel
use Maatwebsite\Excel\Concerns\ToModel;
Чтобы воспроизвести это, просто попробуйте поместить специальный символ в одну из ячеек вашего CSV, а затем импортируйте его, например:
Excel::import(new CsvImport, request()->file('file'));
Результирующие вставленные данные со специальным символом будут сохранены как 0
Кто-нибудь из вас, ребята, испытал это?
Да, я тоже @fmsthird
то же самое здесь @fmsthird
Попробуйте установить кодировку ввода для кодировки, в которой находится ваш файл: https://github.com/Maatwebsite/Laravel-Excel/blob/3.1/config/excel.php#L76
Проблема в том, что файлы csv генерируются из третьей системы, которую я не контролирую, и поставляется с charset = unknown-8bit, поэтому кодировка не определена в исходном файле, и для циклического перебора каждого символа файлы csv содержат сотни тысяч строк который может истечь до завершения
Самый полезный комментарий
Кто-нибудь из вас, ребята, испытал это?