【发布时间】:2017-07-31 06:56:44
【问题描述】:
我创建了一个函数来检查和导入 Excel 文件的文件扩展名。我在 2 台不同的 PC 上运行了相同的源代码。
PC-1 配置:
- Win 7 64位
- XAMPP 与 PHP 7.0.x
- 浏览器谷歌浏览器
- 已安装 Microsoft Office 2013
PC-2 配置:
- Win 10 64 位
- XAMPP 与 PHP 7.1.x
- 浏览器谷歌浏览器
- 已安装 Open Office。不安装 MS Office
我的 Excel 文件由 Google 电子表格创建并导出为扩展名为 .xlsx 的 MS Office 文件。
在 PC-1 中,当我调试 $_FILES['file']['type']; 值时,我得到了扩展:
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
然而在 PC-2 上,我收到了:
'application/octet-stream'
我的问题是:为什么对于相同的源、相同的导入文件、只是不同的环境,调试输出会显示不同的文件扩展名?是安装 MS Office 的原因吗?
【问题讨论】:
-
服务器端报告MIME类型,因此与客户端安装什么软件无关。
-
感谢 Leigh 纠正了我的英语错误。猛禽:那么造成这种情况的原因是什么。
-
我猜这是关于 PHP 7.1 和 7.0 的区别。可以用finfo_file()再次验证MIME类型吗?
标签: php excel google-sheets phpexcel import-from-excel