fputcsv()用分号在单独的单元格中写入数据

时间:2017-10-06 13:26:38

标签: php csv fputcsv

在我的应用程序中,我使用php生成包含一些数据的csv文件。我的代码如下所示。

$fileHandle = fopen('test.csv', "w");
$list = array (
    array('aaa;cc;kk;', 'bbb', 'ccc', 'dddd'),
    array('123', '456', '789'),
    array('"aaa"', '"bbb"')
);

foreach ($list as $fields) {
    fputcsv($fileHandle, $fields);
}
fclose($fileHandle);

数据aaa;cc;kk;被写入单独的单元格(第一个单元格包含aaa,第二个单元格包含cc),而不是将其写入单个单元格。

documentation中,提到默认分隔符是逗号。为什么这个值用分号分隔?我怎么能避免这种情况?

提前致谢。

1 个答案:

答案 0 :(得分:-1)

可以使用fputcsv():

的第三个参数设置分隔符
  

int fputcsv(resource $ handle,array $ fields [,string $ delimiter =   "" [,string $ enclosure ='"' [,string $ escape_char =" \" ]]])

请更改:

fputcsv($file,explode(';',$customerInfo));

为:

fputcsv($file,explode(';',$customerInfo), ";");

请在询问Stack Overflow之前检查documentation