PhpSpreadsheet将日期格式传递给图表

时间:2018-04-17 09:43:37

标签: php xlsx phpspreadsheet

我使用PhpSpreadsheet创建 XLSX 文件。问题是我使用formatCode在单元格内设置日期,但是当我根据这些单元格创建图表时,formatCode不会应用于它们。这会导致图表中的时间戳以及单元格内的正确日期格式。有谁知道如何将正确的日期格式传递到图表中?

祝你好运, laobiz

1 个答案:

答案 0 :(得分:1)

您可能需要将日期格式应用于单元格,例如:

$worksheet->getStyleByColumnAndRow($column, $row)
   ->getNumberFormat()
   ->setFormatCode(\PhpOffice\PhpSpreadsheet\Style\NumberFormat::FORMAT_DATE_DATETIME);

查看支持的日期格式here

请注意,MS Excel不能与PHP之类的unix时间戳一起使用(表示自1970年1月1日以来的秒数)。相反,Excel很重要 自01.01.10000以来的天数,并在转换为小时/分钟/秒时使用浮点值。因此,您无法插入单元格unix时间戳,而是将其转换为Excel时间戳之前。请参阅PHP转换functions from and into Excel serial date format