我想從JSON(下面)中取值並將它們插入到現有CSV的新列中。用我現在的代碼(也在下面),添加到新行的所有內容都是每行上的「數組」一詞。我如何調整我的代碼以使其正常工作?另外,是否有一種方法可以爲我創建的新列設置標題名稱?拉JSON值並添加到現有CSV中的新列
謝謝你,請看下面的代碼,並讓我知道如果你有任何問題。
JSON斑點:
{
"test":{"12345":"98765","56789":"54321"},
"control":{"99999":"987651","88888":"987652","22222":"987653","27644":"987655"}
}
電流CSV:
userid,foo_date,bar,baz,qux,country
"12345","2013-03-14","1.72500","1","1055.74","UK"
"38726","2013-03-14",\N,"1","3430.07","UK"
"85127","2013-03-14",\N,"0","635.25","US"
"16984","2013-03-14",\N,"1","5233.09","US"
電流PHP(按照How to add columns to CSV using PHP):
$json = json_decode($s, true);
$json_values = array_values($json['control']);
$newCsvData = array();
if (($handle = fopen("testgroup.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$data[] = $json_values;
$newCsvData[] = $data;
}
fclose($handle);
}
$handle = fopen('testgroup.csv', 'w');
foreach ($newCsvData as $line) {
fputcsv($handle, $line);
}
fclose($handle);
$s
等於JSON團塊。
得到的CSV應該是這樣的:
userid,foo_date,bar,baz,qux,country,extra
"12345","2013-03-14","1.72500","1","1055.74","UK","987651"
"38726","2013-03-14",\N,"1","3430.07","UK","987652"
"85127","2013-03-14",\N,"0","635.25","US","987653"
"16984","2013-03-14",\N,"1","5233.09","US","987655"
預期的結果.csv文件應該如何看起來像?順便說一句,你已經發布了這個問題兩次。爲什麼不只是加強舊的職位? – hek2mgl 2013-05-08 01:12:14
我剛剛添加了如何生成的CSV文件應該看看我的問題。我決定不提高最後的帖子,因爲它被標記爲重複(我認爲不公平)。這篇文章有更多的信息。 – 585connor 2013-05-08 01:20:06
然後你應該刪除舊帖子 – hek2mgl 2013-05-08 01:20:31