в PHP нет встроенных функций сравнения. но, ура для PEAR: Text_Diff (никогда не использовал это жестко, но в PEAR я верю).
и есть даже пакет PECL, xdiff
подсказка: классы pear - это чистый php, пакеты pecl - это модули. Обычно модули работают быстрее классов, но это также зависит от функциональности. Вы просто должны проверить и оценить.
для хранения: я бы сохранял обычный текст, а не различия. Пространство дешево, многие базы данных (например, mysql) поддерживают сжатие данных (или вы можете де / сжать в php), но если вы сохраняете открытый текст, вы не зависите от алгоритма diff и можете изменить его позже, если потребуется.
если вам нужна скорость, вы можете хранить как открытые тексты, так и различия.