代码之家  ›  专栏  ›  技术社区  ›  Fortega

php excel创建-文件类型无效

  •  1
  • Fortega  · 技术社区  · 15 年前

    我正在使用php创建一个excel文件,如下所示:

    header("Content-type: application/vnd.ms-excel");
    header("Content-Disposition: attachment; filename=invoice.xls");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    echo "<table><tr><th>Test</th></tr><tr><td>...</td></tr></table>";
    

    当我尝试打开文件时,excel会发出警告,指出文件类型不正确。但是,文件显示正确,并且与我希望的完全一样…

    是否有方法防止出现此错误消息?

    3 回复  |  直到 15 年前
        1
  •  1
  •   Ionuț G. Stan    15 年前

    最好的方法是为自己创建一个excel文件并将其保存为html,然后在某个文本编辑器中打开它并查看垃圾。最终,您将在php脚本中找到要输出的内容,这样excel就不会抱怨文件类型和扩展名。

        2
  •  0
  •   ylebre    15 年前

    您生成的文件输出并不是真正的excel格式,因此excel有权投诉它。有几个php包用于生成excel文件,比如 phpexcel.net . 另一种选择是提供一个“普通”的.html文件,并指示用户在excel中打开它。

    希望这有帮助!

        3
  •  0
  •   bumperbox    15 年前

    可以尝试制表符分隔格式 我不确定它是否会抱怨装载它 例如echo“$col\t$col\t$col\t$col\n”

    我还使用了pear excel生成库 它们生成biff格式的excel文件, 它使用起来非常简单,而且您还可以控制单元格的格式 如字体、大小、颜色等