如何在用电子表格(),php生成的.csv文件中显示带小数的整数?
Posted
技术标签:
【中文标题】如何在用电子表格(),php生成的.csv文件中显示带小数的整数?【英文标题】:How to display integers with decimals, in .csv file generated with Spreadsheet (), php? 【发布时间】:2020-05-29 18:15:35 【问题描述】:目前我使用这个函数生成 .csv,基本上我只是将一个数组传递给要在 .csv 文件中创建的行
public function make_csv_file($data)
$spreadsheet = new Spreadsheet();
//create csv file
$sheet = $spreadsheet->getActiveSheet();
$sheet->fromArray($data, null, 'A1');
$writer = new Csv($spreadsheet);
$writer->setDelimiter(',');
$writer->setEnclosure('');
$writer->setLineEnding("\r\n");
$writer->setSheetIndex(0);
header('Content-Type: application/csv; charset=UTF-8');
header('Content-Disposition: attachment; filename="report.csv"');
return $writer;
正如您将看到的数量 113033,如果可以这样,我需要将其显示为 113033.00 和 555.13。细节是,如果它作为 113033.00 而发生在它的安排中,但图书馆将它传递给 113033
我试过了:
$sheet->getStyle('M1')
->getNumberFormat()
->setFormatCode(NumberFormat::FORMAT_NUMBER_00);
但它不起作用
【问题讨论】:
您很可能需要使用***.com/questions/18898638/… 对列中的数据进行格式化,使其保留两位小数。 【参考方案1】:CSV 文件没有格式,这取决于读取它们的程序以按照他们的意愿解释内容。如果您想以某种方式格式化数字,则必须将值存储为您可能不想这样做的字符串。另一种方法是使用像 Excel 这样支持格式化的文件格式。
【讨论】:
以上是关于如何在用电子表格(),php生成的.csv文件中显示带小数的整数?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Google Sheets API V4 导入 CSV 文件