2010-11-11 15 views
1

Existe-t-il un utilitaire de ligne de commande ou un script php/py qui va générer un diff html afin que plusieurs fichiers puissent être comparés afin de comparer 4 fichiers ou plus.comparer 4 fichiers ou plus

Chacun de mes fichiers a un maximum de 10 000 lignes chacun.

Remarque: ces fichiers sont des fichiers texte. pas html. Ne contient que A-Za-z0-9 =.,. et pas de balises HTML

+1

http://stackoverflow.com/questions/86905/suggestions-on-how-build-an-html-diff-tool – ArK

+0

la question était de comparer 2 fichiers html. Je compare des fichiers de texte brut ici – Sairam

+0

bonne question, mais la sortie HTML est un peu illisible? comparer 2 fichiers est un peu moins confus, moyen simple 'diff A B> /tmp/diff.a.b; diff A C> /tmp/diff.a.c; diff A D> /tmp/diff.a.d; cat /tmp/diff.a. *; 'vous pouvez l'embellir plus tard avec HTML, pas exactement ce que vous voulez, peut-être, juste une erreur d'essai – ajreal

Répondre

0

Cela dépend du type de données que vous comparez ou analysez.

La solution de base est

  • file_get_contents vous donne des chaînes de données du fichier
  • strcmp fera un « binaire sûr comparer » des données

Vous voudrez probablement explode() vos données pour le délimiter en quelque sorte, et comparer des sections des données.

Une autre option consiste à délimiter, boucler, et faire un "coefficient de comparaison" qui indiquerait dans quelle mesure les fichiers s'écartent d'une norme. Par exemple, le fichier 1 a cc = 3, le fichier 4 a cc = 8. Le fichier 4 serait plus proche.

Un dernier problème que vous rencontrerez est la limite de mémoire sur l'ordinateur serveur. Vous pouvez changer cela en php.ini.

// EDIT

juste remarqué la balise diff, mais je vais laisser cela de toute façon dans le cas où il aide en quelque sorte.