如何在不使用PEAR和电子表格\u Excel\u Writer的情况下将PHP导出到样式化的CSV或XLS?

如何在不使用PEAR和电子表格\u Excel\u Writer的情况下将PHP导出到样式化的CSV或XLS?,php,export,xls,Php,Export,Xls,我需要将php脚本的输出导出到xls或csv文件。输出文件必须格式化(字体大小、字体重量、边框等) 我有两个选择: 内容变量为带html标记的字符串(格式化文本) 包含准备格式化的数据的数组 我认为最简单的方法是将包含html代码的变量严格导出到xls文件中,我就是这么做的。唯一的问题是,当我下载xls文件并打开它时,Excel会提醒我,打开的文件格式与文件扩展名不同 我的php脚本中的标题: header("Content-Type: application/xmls.ms-excel");

我需要将php脚本的输出导出到xls或csv文件。输出文件必须格式化(字体大小、字体重量、边框等)

我有两个选择:

  • 内容变量为带html标记的字符串(格式化文本)
  • 包含准备格式化的数据的数组
  • 我认为最简单的方法是将包含html代码的变量严格导出到xls文件中,我就是这么做的。唯一的问题是,当我下载xls文件并打开它时,Excel会提醒我,打开的文件格式与文件扩展名不同

    我的php脚本中的标题:

    header("Content-Type: application/xmls.ms-excel");
    header("Content-Disposition: attachment;filename=test.xls");
    header("Content-Transfer-Encoding: binary");
    
    字符集设置为UTF-8

    我还可以使用数组变量处理需要放入单元格的数据,但是:

  • 我不知道如何格式化单元格(字体、边框等)
  • 我不知道如何把数据放进精确的单元格
  • 我不能使用PEAR和电子表格\u Excel\u书写器

  • 任何进一步的帮助都将不胜感激。

    不幸的是,仅仅将HTML转储是行不通的。如果您确实需要格式化电子表格,CSV不是一个选项,因为它不存储格式化信息

    这只剩下XLS作为文件格式,这是一种复杂的二进制格式。试图直接导出到它是不切实际的,这就是为什么编写了一些PHP库来为您解决这个问题。我最近被人打得头昏眼花,据说这并不难用。我对Excel exporters的经验是,他们肯定有一个学习曲线


    你不会说为什么你不能使用PEAR,但是如果你根本不能使用任何外部库,那么你可能就不走运了。

    你需要一个库,即使只是Eli Dickinson生成SpreadsheetML。。。除了我自己的PHPExcel库(链接在Telgin的答案中),我在这里维护了一个选项列表,我可以使用类或任何php脚本,但我不能修改像php.ini这样的基本服务器文件,因为我没有这样做的权限。我发现,PEAR也需要在php.ini中配置,所以我正在寻找其他的东西。任何带有示例或文档的“excel writer”类都有助于解决我的问题。我已经将纯html表格导出到xls文件,忽略excel警报,一切看起来都很好。但我认为这不是一个好的解决办法。