PHP字符串比较然后突出显示差异

时间:2013-04-11 14:01:00

标签: php string

我在sql中将两组json数据存储到两个不同的列中。

我需要比较两个字符串,然后突出显示不同的字符串。 (我首先尝试将项目放入数组,然后是数组差异,不能提供我需要的东西)

这是第一个字符串{"Pri_ID":"340","SanctionID":"55555","PersonID":"387097","Type":"Athlete","OrgID":"253001","EntryDate":"2013-04-10"},{"Pri_ID":"349","SanctionID":"111222","PersonID":"497625","Type":"Athlete","OrgID":"253001","EntryDate":"2013-04-10"},{"Pri_ID":"334","SanctionID":"111111","PersonID":"420495","Type":"Athlete","OrgID":"253001","EntryDate":"2013-04-10"}"

这是第二个字符串{"Pri_ID":"337","SanctionID":"111222","PersonID":"497625","Type":"Athlete","OrgID":"253001","EntryDate":"2013-04-10"},{"Pri_ID":"341","SanctionID":"111111","PersonID":"420495","Type":"Athlete","OrgID":"253001","EntryDate":"2013-04-10"},

如您所见,从第二个字符串中删除了一个记录/字符串。我需要显示已删除的字符串。

这是我到目前为止所做的:

if (strcmp($str1, $str2)) {
    echo $str2;
}

这不会剥夺其他所有内容并显示字符串

1 个答案:

答案 0 :(得分:2)

由于这是JSON数组,您可以先将它爆炸(您可以通过新行char来实现)将每个JSON放入数组中,然后为每个JSON执行json_decode()。然后你将得到两个由关联数组组成的数组。 你所要做的就是制作循环并比较一个数组是否包含另一个数组并将缺少的数组放入第三个数组。

希望这会有所帮助......