在做数据同步时,需要对新旧数据进行对比,得到新增、删除、修改的数据,进而对原有数据进行更新。
例如两组数据 $old,$new 分别存储原有数据,和新查询的数据
$oldList=array();
foreach($old as $v){
$oldLlist[$v['goods_id']]=$v;
}
$newList=array();
foreach($new as $v){
$newList[$v['goods_id']]=$v;
}
$delCount=0;
$editCount=0;
$addCount=0;
//循环原有数据,判断是否删除数据,或者更改数据
foreach($oldList as $key=>$val){
if(empty($newList[$key])){ //有需要删除的数据
if(执行删除操作){
$delCount++;
}
}
if(//判断满足修改条件){//
if(执行修改操作){
$editCount++;
}
}
}
//循环新数据,判断是否新增数据
$addData=array();
foreach($newList as $key=>$val){
if(empty( $oldList[$key])){//新增的数据
$addData[]=$val;
$addCount++;
}
//执行插入操作
}