【问题标题】:merge content of csv files by ID in php在php中按ID合并csv文件的内容
【发布时间】:2015-04-11 15:13:32
【问题描述】:

我想合并两个或多个如下所示的 csv 文件:

文件 1:

offer-id    merchant-category
123         TV
456         TV

文件 2:

ArticleID   Price
456         989.99
789         555.55
123         999.99

输出应如下所示:

offer-id     merchant-category   Price
123          TV                  999.99

文件包含的行数可能不准确,并且行的顺序不同

【问题讨论】:

    标签: php arrays csv merge array-merge


    【解决方案1】:

    1/ 加载第一个 csv 文件

    $file1=Array();
    if (($fp=fopen("data.csv", "r")) {
      while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
         $file1[$data[0]]=$data[1];
      }
      fclose($fp);
    }
    

    2/打开第二个文件并合并

    $result=Array();
    if (($fp=fopen("data2.csv", "r")) {
      while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
         $category=isset($data[0]) ? $file1[$data[0]] : "unknown";
         $result[]=array($data[0], $category, $data[1]);
      }
      fclose($fp);
    }
    

    【讨论】:

      猜你喜欢
      • 2020-03-16
      • 2012-03-25
      • 1970-01-01
      • 2012-06-13
      • 2012-06-01
      • 2021-12-07
      • 2013-05-26
      • 1970-01-01
      • 2011-01-26
      相关资源
      最近更新 更多