我有這樣一個CSV:集團通過CSV一列,從另一個(PHP)的值相加
25/07/2016 3
25/07/2016 4
26/07/2016 4
26/07/2016 1
和輸出,我期望的,它必須是這樣
25/07/2016 7
26/07/2016 5
我想這樣做只使用PHP。 我不得不提,我不使用MySQL,我不想。 有沒有解決方案來做到這一點?
我有這樣一個CSV:集團通過CSV一列,從另一個(PHP)的值相加
25/07/2016 3
25/07/2016 4
26/07/2016 4
26/07/2016 1
和輸出,我期望的,它必須是這樣
25/07/2016 7
26/07/2016 5
我想這樣做只使用PHP。 我不得不提,我不使用MySQL,我不想。 有沒有解決方案來做到這一點?
"25/07/2016","3"
"25/07/2016","4"
"26/07/2016","4"
"26/07/2016","1"
對於例如假設您的CSV文件包含上述數據。
$arr = array();
$handle = fopen("example.csv", "r");
while(!feof($handle))
{
$arrOfCSVLine = fgetcsv($handle);
$date = $arrOfCSVLine[0];
$no = $arrOfCSVLine[1];
if(!array_key_exists($data,$arr))
{
$arr[$date] = $no;
}
else
{
$arr[$date] += $no;
}
}
echo '<pre>';
print_r($arr);
檢查此代碼..
這就是我需要的!謝謝! – OPR
嘗試類似這樣的事情。這只是從this similar post編輯的版本。
$my_file = fopen('file.csv', 'rb');
$my_array = array();
while($row = fgetcsv($my_file)) {
$my_array[$row[0]] += $row[1];
}
$finalOutput = array();
$file = fopen('myCSVFile.csv', 'r');
while (($line = fgetcsv($file)) !== FALSE) {
if(isset($finalOutput[$line[0]])){
$finalOutput[$line[0]] = $line[1] + $finalOutput[$line[0]];
} else {
$finalOutput[$line[0]] = $line[1];
}
}
print_r($finalOutput);
向我們展示你已經嘗試了什麼。 – user2100721
你想從文件中讀取csv並創建輸出文件csv? – Aminesrine