我需要能够比较两个JSON对象,如:
$json1 = json_encode('["red", "green", "blue", "white"]');
$json2 = json_encode('["bla", "something", "haha", "blue"]');
现在,比较这两个对象,值"blue"是重复的,应该从$json2
中删除。
我该怎么做?
如果您已将JSON解码为PHP数组json_decode($json1, true)
,则:
查找重复项:
$dupes = array_intersect($json1, $json2);
获取差异(无重复):
//to remove from $json1
$json1 = array_diff($json1, $dupes);
//to remove from $json2
$json2 = array_diff($json2, $dupes);
要从$json2
中删除它要容易得多:
$json2 = array_diff($json2, $json1);