在 csv 导出方面需要帮助

Need help in csv export

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

organisation_path, client_key and so on

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

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

在我的 csv 中添加这个之后,添加了一个新行,例如

version, 1

但是我的 header 标题变成了

on_path, client_key and so on

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

非常感谢任何帮助。谢谢

r+ 模式打开文件意味着

Open for reading and writing; place the file pointer at the beginning of the file.

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

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

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