Laravel-excel: AJUDA! Caracteres especiais como ñ converterão uma palavra no número 0 na importação

Criado em 1 mar. 2020  ·  5Comentários  ·  Fonte: Maatwebsite/Laravel-Excel

Pré-requisitos

Versões

  • Versão PHP: 7.2
  • Versão do Laravel: 5.8
  • Versão do pacote: ^ 3.1

Descrição


Eu tenho um arquivo CSV com algumas linhas que contém texto / palavras que contêm um caractere especial como ñ , o que aconteceu é que quando tentei importar o arquivo as palavras com caracteres acima ou semelhantes serão convertidas para 0 . Não tenho certeza se está relacionado à codificação, encontrei algumas soluções no StackOverflow, mas nenhuma delas parece funcionar.

informação adicional

Estou usando o ToModel
use Maatwebsite\Excel\Concerns\ToModel;

Para reproduzir isso, basta tentar colocar um caractere especial em uma das células do seu CSV e importá-lo assim:
Excel::import(new CsvImport, request()->file('file'));

Os dados inseridos resultantes que possuem um caractere especial serão armazenados como 0

question

Comentários muito úteis

algum de vocês experimentou este?

Todos 5 comentários

algum de vocês experimentou este?

Sim eu também @fmsthird

mesmo aqui @fmsthird

Tente definir a codificação de entrada para a codificação em que seu arquivo está: https://github.com/Maatwebsite/Laravel-Excel/blob/3.1/config/excel.php#L76

O problema é que os arquivos csv são gerados a partir de um sistema de terceiros sobre o qual não tenho controle e veio com charset = unknown-8bit, então a codificação não está definida no arquivo de origem e para percorrer todos os caracteres os arquivos csv contêm centenas de milhares de linhas que pode expirar antes da conclusão

Esta página foi útil?
0 / 5 - 0 avaliações