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

PHP未检测到XLS文件为zip

  •  0
  • BOENDAGGER  · 技术社区  · 12 年前

    我正在使用一个库来读取XLS文件,该库内部使用PHP的zip_open()函数。在本地创建文件,然后上传到我的测试服务器时,一切都正常。然而,当我使用从网站下载的XLS文件(通过浏览器正常下载)时,它不起作用,而是返回错误19,这意味着该文件不被视为zip文件,这是不正确的。Excel打开文件时没有问题。如果我在本地将文件保存为XLSX文件,然后将其上载,则会收到相同的错误(在本例中,该文件由PHP的ZipArchive类打开)。你知道原因是什么吗?我检查了文件是否不是只读的,是否可能设置了某些Unix权限,而这些权限在Windows中不显示?(对此表示怀疑,因为错误代码表明文件可以访问,但无法识别为XLS)

    使用: Windows下的Apache(WAMP)
    第5.4.12页

    1 回复  |  直到 12 年前
        1
  •  0
  •   BOENDAGGER    12 年前

    我似乎误读了一行代码,压缩检查只是为了确定XLS文件是否是错误命名的XLSX文件。XLS文件的问题是它在解析时没有返回任何工作表,我仍然需要对此进行研究。我不知道为什么将XLS文件保存为XLSX文件(使用Excel)会导致不正确的ZIP存档,但我猜测这是相关的。

    推荐文章