Excel BIFF文件格式 - 日期的单元格类型

时间:2009-07-30 16:26:20

标签: php excel

我正在尝试从php编写一个excel文件,我需要一些单元格来获取日期类型;你对这种类型的细胞的格式代码有什么想法吗?

我正在使用http://pizzaseo.com/php-excel-creator-class中的代码生成excel文件。

感谢。

3 个答案:

答案 0 :(得分:2)

你的问题有点模糊,而且我对PHP知之甚少,但我是类似Python软件包的维护者......所以这是尝试帮助:

Excel不区分数字和日期之间的BIFF记录级别。 XLS阅读器可以判断作者是否打算使用日期的唯一方法是解析作者与相关单元格(间接)关联的“数字格式”。

我假设您正在使用此Format函数来设置包称为“格式”的num_format(不仅包括“数字格式”,还包括对齐,背景,边框......):

function setNumFormat($num_format)

$ num_format应为Excel“数字格式”(例如,您可能使用“$ 0.00”的金额)。对于日期,您只需使用Excel提供的标准日期格式,或者您可以使用自定义格式,如“yyyy-mm-dd hh:mm:ss”(调试时方便)。

然后你做:

worksheet->write($row, $col, $value, $format)

其中$ format如上所述。对于某个日期,$ value应该是一个浮点日期数字,其中1900-03-01T00:00:00表示为日期数字61.0并且您应该避免更早的日期因为... [长咆哮省略],如果有的话可以使用“datemode”或“1904”选项,确保您使用(应该是默认值)0或False或“no,thanks”选项。

答案 1 :(得分:0)

以下是Microsoft的Excel二进制格式的参考文档,它为您提供有关各种单元格类型的所有信息:

Microsoft Excel 97-2007 Binary File Format

答案 2 :(得分:0)

http://www.codeplex.com/PHPExcel可能是更完整的解决方案。