PHP,fputcsv,想要将每个数组写成一列而不是一行

时间:2013-02-19 20:15:00

标签: php arrays csv fputcsv

简单示例:

$a = array(1,2,3,4);
$b = array(10,20,30,40);
$c = array(100,200,300,400);

如果我执行以下操作:

$fp = fopen('somefile.csv','w');
fputcsv($fp,$a);
fputcsv($fp,$b);
fputcsv($fp,$c);
fclose($fp);

我得到一个看起来像这样的文件:

1,2,3,4
10,20,30,40
100,200,300,400

正如我所料。但是我想要的是:

1,10,100
2,20,200
3,30,300
4,40,400

这可能不仅仅循环并写入每个数组中的每个索引吗?

1 个答案:

答案 0 :(得分:4)

使用循环有什么问题?这很容易。

$fp = fopen('somefile.csv','w');
for ($i = 0 ; $i < 4 ; $i++){
  fputcsv($fp, array($a[$i], $b[$i], $c[$i])) ;
}
fclose($fp) ;