dougou7008 2017-08-19 11:11
浏览 260
已采纳

比较两个json数组并删除PHP中的重复项

here i want compare two json array and remove duplicates.

 $jsonArray1 = '["7.00 am To 8.00 am","1.00 pm To 2.00 pm","2.00 pm To 3.00 pm"]';
    $jsonArray2 = '["7.00 am To 8.00 am","1.00 pm To 2.00 pm","2.00 pm To 3.00 pm","10.00 am To 11.00 am"]';
  • 写回答

3条回答 默认 最新

  • dsgdfg30210 2017-08-19 11:26
    关注

    The solution using array_intersect and array_filter functions:

    $json_str1 = '["7.00 am To 8.00 am","1.00 pm To 2.00 pm","2.00 pm To 3.00 pm"]';
    $json_str2 = '["7.00 am To 8.00 am","1.00 pm To 2.00 pm","2.00 pm To 3.00 pm","10.00 am To 11.00 am"]';
    
    list($arr1, $arr2) = [json_decode($json_str1), json_decode($json_str2)];
    $common_items = array_intersect($arr2, $arr1);
    $result = array_filter(array_merge($arr1, $arr2), function($v) use($common_items){
        return !in_array($v, $common_items);
    });
    
    print_r($result);
    

    The output:

    Array
    (
        [6] => 10.00 am To 11.00 am
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器