在php中格式化csv(excel)单元格

有什么办法来格式化的CSV文件的单元格? 例如,我有一个csv文件,我需要格式化它的单元格的大小之前,我出口。另一件事是数字有很多数字,Excel中显示它在另一种格式之前,我dobule点击它,我想摆脱这也是。

header('Content-Type: text/csv; charset=utf-8'); header('Content-Disposition: attachment; filename=export.csv'); 

我知道我必须展示我已经尝试过,但是我找不到任何有关这方面的信息,所以我无处开始…

编辑:该文件是csv,但我用它作为一个Excel文件,和Excel单元格是需要被格式化

CSV格式只包含原始值; 没有办法存储格式化或数据types信息。 这就是为什么大多数(如果不是全部的话)电子表格应用程序让用户在导入CSV文件时手动设置列types的原因。

如果你想让用户不必担心这样做,你最好的select是生成一个xls / xlsx而不是CSV。 PHPExcel是一个stream行的PHP库,用于生成Excel文件,您可能需要试一试。

PHP可以使用str_getcsvhttp://php.net/str_getcsv )将一个CSVstringparsing成一个数组。 从那里只需要编辑数组的值。

至于更高级的function,CSV格式本身不支持它们,因为它是纯文本格式,PHP和CSV文件都不能决定Excel如何parsing文件。

我已经成功地导出了Excel XML文件(旧的,纯文本的XML文件;而不是新的压缩文件),如果数据显示对您很重要,那么这可能是一条可行的路。