📅  最后修改于: 2023-12-03 15:24:19.002000             🧑  作者: Mango
在 PHP 中,我们常常需要将一些数据存储到 csv 文件中。由于 csv 是一种以逗号分隔值的格式,因此在写入数据时需要注意如何处理包含逗号的值,以及如何在新行中正确的写入值。
在 PHP 中,可以使用 fputcsv 函数来将数组中的值写入 csv 文件中,该函数会根据逗号分隔值的格式将值进行处理,并自动添加逗号和换行符。
下面是一个例子,演示如何将一个含有逗号的字符串和一个数组写入 csv 文件中:
<?php
$fp = fopen('data.csv', 'w');
$string = 'apple,banana,orange';
$array = ['apple', 'banana', 'orange'];
fputcsv($fp, explode(',', $string));
fputcsv($fp, $array);
fclose($fp);
结果如下所示:
apple,banana,orange
apple,banana,orange
可以看到,fputcsv 函数会自动处理逗号,并在每一行的末尾添加一个换行符。
在写入 csv 文件时,如果值中含有逗号,需要将该值用双引号括起来。例如,对于包含逗号的字符串,可以使用如下代码来写入 csv 文件中:
<?php
$fp = fopen('data.csv', 'w');
$string = 'apple,"banana,orange"';
fputcsv($fp, explode(',', $string));
fclose($fp);
结果如下所示:
apple,"banana,orange"
可以看到,含有逗号的值被用双引号括起来了。
在写入 csv 文件时,每次写入一行数据后,需要添加一个换行符。可以通过向 fputcsv 函数传递一个空数组来实现:
<?php
$fp = fopen('data.csv', 'w');
$string = 'apple,"banana,orange"';
$array = ['apple', 'banana', 'orange'];
fputcsv($fp, explode(',', $string));
fputcsv($fp, $array);
fputcsv($fp, []);
fclose($fp);
结果如下所示:
apple,"banana,orange"
apple,banana,orange
可以看到,使用空数组作为参数调用 fputcsv 函数,会在 csv 文件中新写一行。
在 PHP 中,使用 fputcsv 函数可以方便的将数组中的值写入到 csv 文件中。对于包含逗号的值,需要将其用双引号括起来。在写入每一行数据后,需要添加一个换行符。