【发布时间】:2017-04-09 09:41:12
【问题描述】:
我正在尝试为我的 yii2 项目使用 phpoffice/phpexcel 插件来读取 excel 文件。对于带有 xls 扩展名的文件,该插件可以完美运行,我可以读取内容,但是当我尝试使用带有日文文件名和 xlsx 扩展名的文件时,它给了我这样的错误:
DOMDocument::loadHTML():实体中 CDATA 0x3 中的字符无效,行:1。
我尝试调查 PHPExcel_IOFactory::identify。调查该函数时,我在 IOFactory 类中遇到了 createReaderForFile,当检查此处设置的扩展类型时,它显示为“Excel2007”,但由于某种原因,在该过程的最后,该文件仍被识别为 HTML。
为了进一步描述这个问题,我的文件有不同的扩展名和名称,但内容基本相同,如下所示:
col1 col2 col3
aaaa bbbb cccc
文件如下:
- あああ.xls(可阅读)
- あああ.xlsx(无法阅读)
- aaaa.xls(可阅读)
- aaaa.xlsx(可阅读)
只有あああ.xlsx 无法读取,其他都可以。这是对 phpoffice/phpexcel 插件的某种限制吗?如果是,您能否建议其他 yii2 扩展,使我能够正确读取 xlsx 和 xls 文件?或者有什么方法可以解决这个问题,以便它可以正确识别文件?
【问题讨论】:
标签: php excel yii2 phpexcel phpoffice