Laravel-excel: [PREGUNTA] El valor de la celda se devuelve como falso

Creado en 27 sept. 2017  ·  3Comentarios  ·  Fuente: Maatwebsite/Laravel-Excel

Estoy usando Laravel Excel 2.1. Laravel 5.4.3.

Estoy intentando leer un archivo CSV. El problema es que algunas celdas se convierten a false cuando deberían ser cadenas.

A continuación se muestra un ejemplo de la primera fila del archivo: 11/10/2016 11:35,91,241,Dundee Students Association,Liar Bar,dusa-2988,Payment,�1.80,�0.00,�1.80 . es en realidad \ufffd .

El problema solo afecta a las tres últimas filas. Cuando leo el archivo:

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 contiene los valores correctos para todo, excepto las tres últimas celdas que solo contienen false . En lugar de ser falso, me gustaría obtener cadenas.

Sin embargo, si elimino todos los solo de la primera fila, ¡funciona bien no solo para la primera fila sino también para el resto!
La primera fila se lee como la siguiente matriz: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-2988","Payment",1.8,0,1.8] .
La segunda fila se lee como la siguiente matriz: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-3461","Payment","\ufffd1.10","\ufffd0.00","\ufffd1.10"] . Todas las filas siguientes se leen de manera similar a la segunda fila.
No puedo desinfectar la primera fila para cada archivo que planeo procesar, entonces, ¿hay alguna manera de configurar Laravel-Excel para obtener el valor de la celda correctamente como una cadena?

Comentario más útil

@ marijnz0r ¡ Muchas gracias!
Solía ​​tener un problema como este con el carácter °.
Para resolver mi problema hice eso:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

Todos 3 comentarios

El mismo problema surge para mí cuando uso caracteres como y é . ¿Ya has encontrado una solución?
Editar: cambiar la codificación de caracteres a windows-1252 funcionó para mí.

@ marijnz0r ¡ Muchas gracias!
Solía ​​tener un problema como este con el carácter °.
Para resolver mi problema hice eso:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

¡Tks mucha ayuda!

¿Fue útil esta página
0 / 5 - 0 calificaciones