寻找基于PHP的修订版差异比较

时间:2010-10-09 22:04:42

标签: php diff

我一直在努力想出这个...我甚至下载了MediaWiki并查看了他们的差异脚本,但我无法做出正面或反面。我正在制作一个内容管理系统,它将保存修订历史记录。但是,修订历史是没有意义的,除非您可以分析差异。除此之外,我的需求非常简单,而且很多系统都非常复杂,而且我还远远不够聪明,无法解决这些问题。

http://en.wikipedia.org/wiki/Help:Diff

我想输入两个变量:

  • $ old(这是左边的源代码)
  • $ new(这是右边的源代码)

然后我想收到一个结果的数组矩阵。数组的每个元素都是一行,就像您在上面的维基百科链接中看到的那样。每个元素应该有4个值......

  • $ oldDiff(左边的修饰符,通常为空白,+或 - )
  • $ newDiff(将是右边的修饰符,通常为空白,+或 - )
  • $ oldLine(左侧的文字行)
  • $ newLine(右边的文字行)

多数民众赞成......非常简单的结果。我可以自己分析数组矩阵并在我的脚本中输出结果。

2 个答案:

答案 0 :(得分:0)

查看Pear Text_Diff包。它不会精确地为您提供所需的数组,但它会提供您应该能够使用的数组。您可能还想查看本机UNIX diff实用程序,这无疑会比任何本机PHP方法更快。

答案 1 :(得分:0)

我最终使用了Chris Boulton的PHP-Diff https://github.com/chrisboulton/php-diff

效果很好。