我有一个使用 CSV 文件来维护 MySQL 数据库中的数据(产品)的场景。基本上客户维护产品的步骤如下:
- 将项目添加到预定义列中的 CSV 文件
- 在后端上传 CSV
- PHP 脚本遍历 CSV 数据
- 数据经过验证/清理并发送到 MySQL 数据库
当客户端编辑、添加或删除项目时,同样适用于相反的情况,但是这也可以直接从后端完成。我遇到了某些字符在数据库或下载的电子表格中没有正确显示的问题,所以我的问题是:
通常,在以 CSV 文件的形式添加和检索数据时,适用于数据的一组好的编码或字符串函数是什么?我的 MySQL 连接编码是 UTF-8,但是我尝试使用 UTF-8 字符集保存 CSV 文件,但似乎 Excel 会自动对其应用默认的 Windows-1252 编码,从而破坏所有 ym UTF-8 字符。
像 Open Office.org 这样的应用程序会提示您输入导入字符集,并且当设置为 Unicode UTF-8 时,它显示正常。显然不能依赖客户端总是使用 Excel 或 Open Office,那么 PC / CSV > MySQL > 回到 PC / CSV 工作的好的解决方案是什么?
欢迎和赞赏所有建议。
西蒙