在csv export中需要帮助

时间:2018-01-19 12:47:47

标签: php csv yii

我有一个奇怪的问题。实际上我在使用ECSVExport的yii中使用export csv。它的工作正常。当我导出csv时,它的标题看起来像这样。

organisation_path, client_key and so on

现在我需要在标题之前添加一行(我的意思是上面的标题)。所以我在导出csv之后但在将文件保存到指定位置之前使用了以下行。

$handle = fopen($path, 'r+');
fputcsv($handle, array('version', '1'));
fclose($handle);

在我的csv中添加此内容后,添加了一个新行,如

version, 1

但我的标题标题变得像

on_path, client_key and so on

所以现在我的问题是当我在开始时添加新行然后为什么我的csv标题被打扰(我的意思是在它之前是organisation_path但是在添加行之后它变成了on_path)。有没有更好的方法在我的csv文件的开头添加行?实际上我不想在这里运行任何循环,因为我只想在标题标题之前添加一行。

非常感谢任何帮助。感谢。

1 个答案:

答案 0 :(得分:3)

r+模式打开文件意味着

  

开放阅读和写作;将文件指针放在文件的开头。

因此,当您编写版本字符串时,将覆盖当前内容。您可以看到version, 1organizati的长度相同。

因此,您可以在导出到文件之前编写版本。

file_get_contents()您的文件,在此字符串前加上您的版本字符串,然后使用file_put_contents()将新数据写入文件。