Laravel-excel: 0 显示为空白单元格

创建于 2014-05-29  ·  7评论  ·  资料来源: Maatwebsite/Laravel-Excel

如果之前有人问过这个问题,我深表歉意。 我浏览了关闭的问题并没有找到任何东西。

运行以下示例代码时,它有 2 行,但 0 显示为空白单元格。

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

我在 PHPExcel 网站上发现了这篇文章,它展示了如何让 0 显示:
https://phpexcel.codeplex.com/discussions/346577

这是我必须将代码更改为的内容,以便 0 不会显示为空白。

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

看来,如果您将 0 作为字符串“0”传递,它也会起作用。

我很惊讶默认行为是将 0 显示为空白单元格。 有没有更简单的方法来显示 0? 是否有一个全局配置选项可以在一个地方设置,这样我就不必每次都传递所有这些附加参数?

最有用的评论

@philliskiragu我遇到了同样的问题,但在导出文档中发现了这个注释:

默认情况下 0 显示为空单元格。 如果要更改此行为,可以将 true 作为第 4 个参数传递:

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

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

如果其他人偶然发现了这一点,希望这会消除一些混乱。

所有7条评论

将随 v1.1.0 添加

嗨,我在导入时遇到了同样的问题。 我的 CSV 中为“0”的任何列都返回为空。

你能不能就此提出一个新问题,因为它是关于导入而不是导出的。

谢谢,在这里完成: https :

我知道这个问题已经关闭,但我在 v2.1 中遇到了同样的问题 当我导出到 csv 时,0 或 null 的字段是空白单元格。

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

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

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

@philliskiragu我遇到了同样的问题,但在导出文档中发现了这个注释:

默认情况下 0 显示为空单元格。 如果要更改此行为,可以将 true 作为第 4 个参数传递:

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

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

如果其他人偶然发现了这一点,希望这会消除一些混乱。

@philliskiragu我遇到了同样的问题,但在导出文档中发现了这个注释:

默认情况下 0 显示为空单元格。 如果要更改此行为,可以将 true 作为第 4 个参数传递:

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

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

如果其他人偶然发现了这一点,希望这会消除一些混乱。

该链接已过时。 对于那些仍在寻找零以显示为零的人,这里是指向文档部分的更新链接,该部分告诉您如何
https://docs.laravel-excel.com/3.1/exports/collection.html#strict -null-comparisons
基本上你只需要做: use Maatwebsite\Excel\Concerns\WithStrictNullComparison;

此页面是否有帮助?
0 / 5 - 0 等级