Php Laravel Excel列格式将数字替换为0

Php Laravel Excel列格式将数字替换为0,php,excel,laravel,laravel-excel,Php,Excel,Laravel,Laravel Excel,版本 PHP版本:7.1 Laravel版本:5.4 软件包版本:2.1 描述 导出到excel电子表格时,列格式将生成一个四舍五入的数字 复制步骤 预期行为: 列,格式如下: $sheet->setColumnFormat( array( 'C' => '0', //NUMBER format )); 对于像:444444这样的数字,它应该复制完全相同的数字 实际行为: 相反,它生成以下内容:44444 0 它正在用0替换最后的4 补充资料 通过将格式更改为文本或

版本

PHP版本:7.1 Laravel版本:5.4 软件包版本:2.1 描述

导出到excel电子表格时,列格式将生成一个四舍五入的数字

复制步骤

预期行为:

列,格式如下:

$sheet->setColumnFormat(
       array( 'C' => '0', //NUMBER format 
));
对于像:444444这样的数字,它应该复制完全相同的数字

实际行为:

相反,它生成以下内容:44444 0 它正在用0替换最后的4

补充资料

通过将格式更改为文本或通用,同样的情况也会发生,数字用科学符号表示:4.444 E+15


看来你正在经历。任何超过15位的数字都会导致四舍五入。

不是理想的解决方案,但效果很好

$sheet->setCellValueExplicit('C'.$rowCount, $myData);

首先,我用我想要的格式将所有数据附加到行中,然后使用setCellValueExplicit方法仅用显式数据填充我需要的单元格。我想说,有点小问题。

当我从44444长度15变为4444长度16时,它肯定会遇到问题。第一个正确复制,第二个替换为最后一位的0。关于链接中的两个解决方案:第一个建议使用函数轮。可以让Laravel Excel将函数放入单元格中吗?第二种解决方案不是一种选择,因为我不希望人们总是做这种改变。