2012-10-19 94 views
-4

我有一个带有数据的csv文件我想要在空白处填充数据。然后导出到excel文件或例如数据库。我想第一列复制的第一个产品A,以填补其他空间数据处理PHP

例如

Type  Description Cost 
Product A rrrrrrrr 33.00 
NEEDS FILL ttttttttt 45.00 
NEEDS FILL eeeeeeeee 50.00 
Product B yyyyyyyyy 80.00 
NEEDS FILL qqqqqqq 90.00 
NEEDS FILL iiiiiiii 100.00 

需要像这样

Type  Description Cost 
Product A rrrrrrrr 33.00 
Product A ttttttttt  45.00 
Product A eeeeeeeee 50.00 
Product B yyyyyyyyy 80.00 
Product B qqqqqqq  90.00 
Product B iiiiiiii  100.00 

文件的结果将在被写入文件请帮我一直挠我的脑袋

+2

你有什么试过?你知道如何打开csv吗?你在哪里难倒?更多信息将帮助我们为您提供更好的答案。 – Omnikrys

+1

我们也在摸索着看到你的问题。请更具体地说。你卡在哪里? – Lion

+0

你是什么意思'需要填充'?那是''或'\ t'或'\ r'或什么都没有 – Baba

回答

1

好像你没有代码,所以我可以给你的只是概述:

您将需要fgetcsv()来读取CSV文件。您可以从手册中的示例代码开始。

循环遍历行,始终将第1列保存到变量中,所以您仍然可以在下一次迭代中使用它。如果当前迭代中的列1为空,则使用保存的值。

fputcsv()可用于即时创建新的CSV文件。

+0

我试过你的提示。当我在循环播放时,我希望它获得每个第一个位置,如果它为空或不是。我有一些代码,我试过我们非常感谢你的帮助,感谢 – Taps101

+0

($ c = 0; $ c <$ num; $ C++){//第一列A1的类型为“Product A” $ store = $ data如果($ data [$ c] [0] ==“”){ $ data [$ c] [0])如果下一行的位置0为空,则添加存储的内容 [0121] = $店; } ///否则如果该行不是空的,则将该新的位置值放入数组中并继续循环。 elseif($ data [$ c] [0]!==“”){ $ store == $ data [$ c [0]]; – Taps101