Laravel-excel: 0 muncul sebagai sel kosong

Dibuat pada 29 Mei 2014  ·  7Komentar  ·  Sumber: Maatwebsite/Laravel-Excel

Mohon maaf jika pertanyaan ini sudah pernah ditanyakan sebelumnya. Saya membaca sepintas masalah yang ditutup dan tidak menemukan apa pun.

Ketika kode contoh berikut dijalankan, ia memiliki 2 baris tetapi 0 muncul sebagai sel kosong.

\Excel::create('test', function ($excel) {
    $excel->sheet('sheet', function ($sheet) {
        $sheet->fromArray(array(array('foo' => 0), array('foo' => 4)));
    });
})->export('xls');

Saya menemukan posting ini di situs PHPExcel yang menunjukkan cara memunculkan 0:
https://phpexcel.codeplex.com/discussions/346577

Inilah yang harus saya ubah kode saya agar 0 tidak muncul sebagai kosong.

\Excel::create('test', function ($excel) {
    $excel->sheet('sheet', function ($sheet) {
        $sheet->fromArray(array(array('foo' => 0), array('foo' => 4)), null, 'A1', true);
    });
})->export('xls');

Tampaknya juga jika Anda memberikan 0 sebagai string "0" itu akan berfungsi juga.

Saya terkejut bahwa perilaku default adalah menampilkan 0 sebagai sel kosong. Apakah ada cara yang lebih mudah untuk membuat 0 muncul? Apakah ada opsi konfigurasi global yang dapat saya atur di satu tempat sehingga saya tidak harus melewati semua argumen tambahan itu setiap saat?

Komentar yang paling membantu

@philliskiragu Saya memiliki masalah yang sama, tetapi menemukan catatan ini di dokumentasi ekspor:

Secara default 0 ditampilkan sebagai sel kosong. Jika Anda ingin mengubah perilaku ini, Anda dapat memberikan true sebagai parameter ke-4:

// Will show 0 as 0
$sheet->fromArray($data, null, 'A1', true);

http://www.maatwebsite.nl/laravel-excel/docs/export

Mudah-mudahan ini akan menjernihkan kebingungan jika ada orang lain yang menemukan ini.

Semua 7 komentar

Akan ditambahkan dengan v1.1.0

Hai, saya mengalami masalah yang sama dengan impor. Setiap kolom di CSV saya yang '0' dikembalikan sebagai nol.

Bisakah Anda membuat masalah baru tentang ini, karena ini tentang mengimpor dan tidak mengekspor.

Saya tahu masalah ini sudah selesai tetapi saya mengalami masalah yang sama dengan v2.1 Ketika saya mengekspor ke csv, bidang dengan 0 atau nol adalah sel kosong.

 Excel::create('issues', function ($excel) use ($issues) {

                $excel->sheet('Sheet 1', function ($sheet) use ($issues) {

                    $sheet->fromArray($issues);
                });
            })->export('csv');

@philliskiragu Saya memiliki masalah yang sama, tetapi menemukan catatan ini di dokumentasi ekspor:

Secara default 0 ditampilkan sebagai sel kosong. Jika Anda ingin mengubah perilaku ini, Anda dapat memberikan true sebagai parameter ke-4:

// Will show 0 as 0
$sheet->fromArray($data, null, 'A1', true);

http://www.maatwebsite.nl/laravel-excel/docs/export

Mudah-mudahan ini akan menjernihkan kebingungan jika ada orang lain yang menemukan ini.

@philliskiragu Saya memiliki masalah yang sama, tetapi menemukan catatan ini di dokumentasi ekspor:

Secara default 0 ditampilkan sebagai sel kosong. Jika Anda ingin mengubah perilaku ini, Anda dapat memberikan true sebagai parameter ke-4:

// Will show 0 as 0
$sheet->fromArray($data, null, 'A1', true);

http://www.maatwebsite.nl/laravel-excel/docs/export

Mudah-mudahan ini akan menjernihkan kebingungan jika ada orang lain yang menemukan ini.

Tautan itu sudah usang. Bagi mereka yang masih mencari nol untuk muncul sebagai nol, berikut tautan yang diperbarui ke bagian dokumen yang memberi tahu Anda caranya
https://docs.laravel-excel.com/3.1/exports/collection.html#strict -null-comparisons
Pada dasarnya Anda cukup melakukan: use Maatwebsite\Excel\Concerns\WithStrictNullComparison;

Apakah halaman ini membantu?
0 / 5 - 0 peringkat