【发布时间】:2023-03-31 00:33:01
【问题描述】:
我正在使用 fputcsv 将数据导出到 CSV 文件。我有正在写入的字符串,但是我要求数据用双引号引起来。
foreach ($orderDetails['lines'] as $line) {
fputcsv($orderImportCsv, $line);
}
在编辑器中打开时会创建以下内容(崇高)
L,M3344,,100
L,M3356,,50
我需要将这些字段中的每一个都用双引号括起来。
所以我试过这个:
foreach ($lines as &$line) {
foreach ($line as &$column) {
$column = '"' . $column . '"';
}
}
所以本质上这应该遍历每一行字段并将其包装在“”中。但是在运行之后,我得到以下输出:
"""L""","""M3344""","""""","""100"""
"""L""","""M3356""","""""","""50"""
现在在变量周围放置了 2 组双引号!
有没有更好的方法来做到这一点?
更新
我知道fputcsv 有两个可选参数。分隔符和外壳。但是我相信附件默认为 "" 但仅当字符串被拆分为单独的单词时。
【问题讨论】: