我有一个以下格式的数组——它本质上是一个预先格式化的 CSV 行的数组——这个例子中的键 0 和 1 有一个包含换行符的 CSV 值。
Array
(
[0] => 'foo,foo,foo,foo
bar,foo,a:1:{i:0;s:4:"blah";}'
[1] => 'bar,bar,bar,bar
foo,bar,a:1:{i:0;s:4:"blah";}'
[1] => 'bar,bar,bar,foo,bar,a:1:{i:0;s:4:"blah";}'
)
我接下来要做的就是将其\r\n
用作胶水,生成 CSV 文件,然后将其写出来。问题是生成的文件不会将包含换行符的字段包含在双引号中,以便可以保留换行符(或者至少我假设它会保留)。
生成的 CSV 文件将上传到数据库或在 Excel 中编辑,并且需要在字段中保留换行符。
在分解为正确格式后使用 fputcsv 会生成一个 CSV,该 CSV 具有换行符并用双引号包裹在记事本或类似文件中,但在 Excel 中打开时不会。
$parent_wholelines = array();
foreach ($output_array as $wholeline) {
$parent_wholelines[] = explode(',', $wholeline);
}