从 MS Excel 生成的 php CSV 导入

Posted

技术标签:

【中文标题】从 MS Excel 生成的 php CSV 导入【英文标题】:php CSV import generated from MS Excel 【发布时间】:2012-01-27 20:41:30 【问题描述】:

根据此处指定的标准:http://en.wikipedia.org/wiki/Comma-separated_values

和一个从 MS Excel 生成的 CSV 文件,我想知道如何在 php 中导入 CSV 文件 案例:

通常情况下,CSV 单元格不包含在双引号 (") 中,但当单元格值中有逗号 (,)、双引号 (") 或换行符 (\n) 时会包含在其中。

单元格中的双引号被替换为两个双引号 (" => "")。

例如testCell 1,"test,逗号单元格 2","testCell ""双引号""3",testCell 4

现在的问题是,我们如何在读取此类 CSV 时识别/分隔每个单元格,因为单元格可能用双引号括起来,也可能没有。

【问题讨论】:

parse csv file php, How to parse csv in PHP having multiline data in a column的可能重复 @outis 我不知道。 Excel 通常输出不符合标准的 CSV。 fgetcsv 一点都不喜欢。 @Phoenix: 可能,但fgetcsv 既适用于描述的具体案例,也适用于测试数据。 【参考方案1】:

@outis:你是对的(fgetcsv 适用于这两种特定情况)。问题是在应用 fgetcsv 之前解析一些德语字符。

【讨论】:

以上是关于从 MS Excel 生成的 php CSV 导入的主要内容,如果未能解决你的问题,请参考以下文章

PHP 高效导入导出Excel(csv)方法之fgetcsv()和fputcsv()函数

php中CSV文件导出问题?

将使用 PHP 创建的 csv 文件导入 Excel 时,如何在数字字符串值中保留前导零?

PHP导入导出excel表格图片(转)

CSV文件导入数据库和导出数据库

急求php导出生成excel的代码