Laravel-excel: [PERTANYAAN] Nilai sel dikembalikan sebagai salah

Dibuat pada 27 Sep 2017  ·  3Komentar  ·  Sumber: Maatwebsite/Laravel-Excel

Saya menggunakan Laravel Excel 2.1. Laravel 5.4.3.

Saya mencoba membaca file CSV. Masalahnya adalah, beberapa sel diubah menjadi false padahal seharusnya berupa string.

Berikut adalah contoh baris pertama file: 11/10/2016 11:35,91,241,Dundee Students Association,Liar Bar,dusa-2988,Payment,�1.80,�0.00,�1.80 . sebenarnya \ufffd .

Masalahnya hanya menyangkut tiga baris terakhir. Ketika saya membaca file:

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 berisi nilai yang benar untuk semuanya, kecuali tiga sel terakhir yang hanya berisi false . Alih-alih mendapatkan false, saya ingin mendapatkan string.

Namun, jika saya menghapus semua hanya dari baris pertama, itu berfungsi dengan baik tidak hanya untuk baris pertama tetapi juga untuk yang lainnya!
Baris pertama dibaca sebagai array berikut: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-2988","Payment",1.8,0,1.8] .
Baris kedua dibaca sebagai array berikut: ["11\/10\/2016 11:35",91,241,"Dundee Students Association","Liar Bar","dusa-3461","Payment","\ufffd1.10","\ufffd0.00","\ufffd1.10"] . Semua baris berikutnya dibaca dengan cara yang mirip dengan baris kedua.
Saya tidak dapat membersihkan baris pertama untuk setiap file yang saya rencanakan untuk diproses, jadi apakah ada cara untuk mengatur Laravel-Excel untuk mengambil nilai dari sel dengan benar sebagai string?

Komentar yang paling membantu

@marijnz0r Terima kasih banyak!
Saya dulu punya masalah seperti ini dengan karakter °.
Untuk mengatasi masalah saya, saya melakukan itu:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

Semua 3 komentar

Masalah yang sama muncul bagi saya ketika menggunakan karakter seperti dan é . Apakah Anda sudah menemukan solusinya?
Sunting: mengubah pengkodean karakter menjadi windows-1252 berhasil untuk saya.

@marijnz0r Terima kasih banyak!
Saya dulu punya masalah seperti ini dengan karakter °.
Untuk mengatasi masalah saya, saya melakukan itu:
Config::set('excel.import.encoding.input', 'windows-1252'); Config::set('excel.import.encoding.output', 'windows-1252');

Tks banyak membantu!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

launtony picture launtony  ·  29Komentar

adnandogar picture adnandogar  ·  32Komentar

abbylovesdon picture abbylovesdon  ·  25Komentar

ctf0 picture ctf0  ·  19Komentar

dalholm picture dalholm  ·  24Komentar