保持JSON文档更改历史记录的方法

时间:2016-09-23 14:43:14

标签: php json mongodb

我正在使用mongodb数据库,因此所有文档都是JSON格式。我目前的任务是以某种方式跟踪document更改的历史记录。我发现为此目的有一个公认的rfc 6902标准,但是如何在patch中生成这样的数组差异(即差异= PHP)?或者 - 我如何保留JSON的变更历史,可能使用其他标准或方法?

原始aproachis:想象一下,我们有一个更改的Array1。结果是array2。然后我使用上面提到的标准计算差异(补丁)并将其保存在mongodb的历史收集中。因此,我们只保存更改的内容而不是整个新数组。

我需要能够保存历史记录并在需要时将document恢复到原始状态。这是我找到的页面:http://jsonpatch.com/

这导致PHP的多个库(我使用的是版本7)。第一个库生成patch(我正在寻找的差异JSON),但是这个lib也被打破到不能使用patch的程度!

https://github.com/mikemccabe/json-patch-php

这些其他库正在使用patch参数,但它们不会生成它!

https://github.com/xp-forge/json-patch

https://github.com/gamringer/JSONPatch

所以此时我没有别的选择。

0 个答案:

没有答案