我正在尝试解析用户通过 PHP 上传的 CSV 文件,但它无法正常工作。
我已经上传了几个格式正确的 CSV,但是效果很好;我有很多用户尝试导入从 Excel 导出的 CSV 文件,但他们遇到了问题。我将这些文件与我的文件进行了比较,并注意到 Excel 文件在条目周围都没有引号。除此之外,它们是相同的。如果我打开它并使用 Open Office 保存它,而不做任何更改,它就可以工作。所以我相当肯定它与报价有关。
我的问题是;如何阅读这些格式不正确的 CSV?
更新:原因已经找到!
这是特定于 Mac 版本的 Excel。由于某些任意原因,Mac 上的换行符处理方式不同,因此在使用 fgetcsv 之前,您应该这样做;
ini_set('auto_detect_line_endings',TRUE);