比较JSON文件和更新

时间:2014-03-30 10:44:58

标签: php json diff

我想询问php中是否有专门用于比较两个json文件差异并使用旧版本更新新版本的工具?顺便说一句,我试过php的array_diff*,他们只给出了一个维度的差异。如果有人已经做过类似的事情,我会很感激。

1 个答案:

答案 0 :(得分:0)

您是否尝试使用递归array_diff?

function arrayRecursiveDiff($aArray1, $aArray2) {
  $aReturn = array();

  foreach ($aArray1 as $mKey => $mValue) {
    if (array_key_exists($mKey, $aArray2)) {
      if (is_array($mValue)) {
        $aRecursiveDiff = arrayRecursiveDiff($mValue, $aArray2[$mKey]);
        if (count($aRecursiveDiff)) { $aReturn[$mKey] = $aRecursiveDiff; }
      } else {
        if ($mValue != $aArray2[$mKey]) {
          $aReturn[$mKey] = $mValue;
        }
      }
    } else {
      $aReturn[$mKey] = $mValue;
    }
  }
  return $aReturn;
} 

该功能取自here