支持添加/删除列的PHP CSV库?

时间:2015-07-25 01:15:44

标签: php csv

是否有支持插入和删除列的CSV操作的PHP库?

我正在生成一些大型的CSV和数据集大小意味着预测我将要提前需要的列不再削减它 - 我希望能够将列插入CSV(在运行时不一定在表的最右边。是否有可以执行此操作的库或函数? <{1}}和fputcsv()已经不够了。

2 个答案:

答案 0 :(得分:1)

查看https://github.com/goodby/csv

或者,如果您的最终目标是导出到Excel并且您不需要更通用的CSV导出,请查看PHPExcel(https://phpexcel.codeplex.com/)。

答案 1 :(得分:0)

标头映射(伪代码)

 $header = fgetcsv( $f ); //get line1


 while( !feof($f) ){
      $data = array_combine( $header, fgetcsv($f) );
 }

你想要一个关联数组

   array( 'name' => 'someguy' ... );

然后订单不再重要。但是,如果您的意思是将整列添加到现有文件中,那么遗憾的是您不必重写该文件。我不认为你可以只在右边插入数据,因为它会弄乱filepointer和字节顺序以及各种其他复杂的东西。至少根据我的经验,我不得不用空格填充线,所以后者我只能修改线然后修剪到一个设定值,基本上说一条线总是n个字符长等等。但是这可能有由于多个进程写入文件,我无法回想起我的头脑。