想要将CSV文件中的数组值保存为两列。目前,所有值都在一行中

时间:2014-03-19 20:16:32

标签: php csv for-loop fputcsv

我通过PHP将一个CSV文件值存储到另一个中。 我想将一列中的$col_1_values_array值保存到CSV文件中,将$col_2_values_array保存到另一列中。虽然我的代码将所有值显示在一行中,但我该如何纠正呢?

这是我的代码

 $data_file = $ride[$i][0];
 $file_delimiter = ',';

 $csv = new csvCRUD($data_file,$file_delimiter);
 $col_1_values_array=$csv->output_column('C','array');
 $col_2_values_array=$csv->output_column('D','array');
 $c=count($col_1_values_array);
 $line=array();
 $fp = fopen('7654.csv', 'w');
 for($p=0;$p<$c;$p++)
 {
  $line[]=$col_1_values_array[$p];
  $line[]=$col_2_values_array[$p];
  }
  fputcsv($fp,$line);

  fclose($fp);

1 个答案:

答案 0 :(得分:0)

fputcsv()移到您的循环中。这样,每次迭代都会创建一个新行。到目前为止,您只是制作了一个大数组,然后将其添加为一个大行。

for($p=0;$p<$c;$p++)
{
    $line[]=$col_1_values_array[$p];
    $line[]=$col_2_values_array[$p];
    fputcsv($fp,$line);
}
相关问题