【发布时间】:2013-11-21 15:12:39
【问题描述】:
我有一个 CSV 文件,在这种情况下,第一个“单元格”只是一个 int,9。下一行是第一个“单元格”的 10,依此类推。当我执行$array = fgetcsv($file); 时,第一行的第一个单元格的值前面有这些奇怪的字符:ˇ˛
我的数据库导入搞砸了,因为这个单元格应该只包含一个 int。它只发生在第一行的第一个单元格上。
关于为什么会发生这种情况以及我可以做些什么来避免它的任何想法?
【问题讨论】:
-
CSV 文件是否使用 BOM 标头保存?
-
@MarkBaker 这是从 MSSQL 数据库导出并导入到 OpenOffice 并再次保存为 CSV 的 CSV。如何判断它是否与 BOM 表头一起保存?
-
大多数支持此类内容的文本编辑器都有一个选项,可以让您查看设置的编码......例如,我使用 NotePad++,菜单上有一个
encoding选项显示我当前的编码并允许我更改它 -
@MarkBaker 在没有 BOM 的情况下保存为 UTF-8 有效。可能想让它成为一个答案,以便它可以被接受。
标签: php csv fgetcsv illegal-characters