我有两个csv文件。
第一个文件有
date offerid点击订单
第二个文件
显示日期报价
如何在php中以编程方式合并这两个csv文件?
答案 0 :(得分:0)
在PHP中将这两个文件读入数组。
然后,做一个嵌套循环
for (all items in array A) {
find a matching item in array B
set properties from item from array B on the item in array A
}
因此,您将拥有一个包含两个CSV文件信息的阵列A.
答案 1 :(得分:0)
class DataRow extends Object {
var $date;
var $offerid;
var $clicks;
var $orders;
var $shown;
}
function getMatchingRow($date, $offerid, $rows){
foreach($rows as $myRow){
if($myRow->date == $date && $myRow->offerid == $offerid){
return $myRow;
}
}
return null;
}
$rows = array();
$complete_rows = array();
$first = file('FirstFile.csv');
$second = file('SecondFile.csv');
foreach($first as $line){
$row = new DataRow();
$parts = explode(',',$line);
$row->date = $parts[0];
$row->offerid = $parts[1];
$row->clicks = $parts[2];
$row->orders = $parts[3];
$rows[] = $row;
}
foreach($second as $line){
$parts = explode(',',$line);
$row = getMatchingRow($parts[0],$parts[1],$rows);
if(!is_null($row){
$row->shown = parts[2];
}
$complete_rows[] = $row;
}
// loop over $completed_rows and write each to a new file
未经测试,但这应该可以让你在那里大部分时间。祝你好运。