[英]Write to a CSV file on two columns
我正在尝试创建CSV文件。 我已经做到了 我将下面的内容放入循环中,并在循环之外添加了第一行和最后一行。
$FileHandle = fopen('tech.csv', 'a+') or die("can't open file");
$stringa = $item." , ".$item2."\r\n";
fwrite($FileHandle, $stringa);
fclose($FileHandle);
但是,它在CSV文件中如下所示:
a
b
c
d
而不是我想要的方式:
a b
c d
基本上是两列而不是一列。
我究竟做错了什么?
我真的希望您不要在每次迭代中都打开和关闭文件,因为这会对文件系统造成很大的压力。 相反,您可以执行以下操作:
$csv = array();
foreach($myData as $row) {
$csv[] = trim($row['item1']).','.trim($row['item2']);
}
file_put_contents('tech.csv', implode("\r\n", $csv), FILE_APPEND);
或者,您可以使用fputcsv函数:
$fp = fopen('tech.csv', 'a+');
foreach($myData as $row) {
fputcsv($fp, array(trim($row['item1']), trim($row['item2']));
}
fclose($fp);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.