我正在尝试使用Google Docs电子表格作为一个非常简单的项目的数据库,我觉得我现在有一个工作版本,基于yc对这个问题的回答: using Google Docs as a database?
我的问题是,现在我到了可能需要对转义字符做某事的地方。我不知道CSV是否有标准实现,或者程序与程序有所不同,但这是Google Docs正在做的事情:
如果我有以下源数据(a,b,c,d,e表示5个单独的列)
a b c d1, d2, d3, d4 e1, e2, "e3, e4", e5, "e6"
然后它产生以下行:
a,b,c,"d1, d2, d3, d4","e1, e2, ""e3, e4"", e5, ""e6"""
据我所知,如果它找到了某些东西并且逃脱了“as”那么它将整个领域包裹在“领域”中。也许我们只需要“进入”并将该字段从“字段”展开到字段中
有没有办法在PHP中解析这个版本的CSV?如果它真的很难,我仍然知道如何替换Google Docs中的字符,并将它们发布在不同的工作表上,但我希望可以在一个简单的PHP函数中解决它。
替代解决方案:也许以RSS或ATOM格式获取XML要容易得多,但我不知道如何解析这些格式。
答案 0 :(得分:0)
使用str_getcsv,使用引号本身作为转义字符,例如:
$array = str_getcsv($str, ',', '"', '"');
如果要从文件或网络流进行解析,请考虑使用fgetcsv。