Chciałbym wykorzystać PHP do stworzenia skryptu do porównania dwóch plików tekstowych o rozmiarze ~kilkaset MB każdy z linii komend. Struktura obydwu jest mniej więcej taka:
^L
RekordA
PoleA1 WartośćA1
PoleA2 WartośćA2
PoleA3 WartośćA3
^L
^L
RekordB
PoleB1 WartośćB1
PoleB2 WartośćB2
PoleB3 WartośćB3
^L
...
Znak "^L" to Form Feed (0c hex).
Kolejność "rekordów" (w powyższym przykładzie są 2: zielony i niebieski, oddzielone ^L^L) jest zmienna w obydwu plikach.
Wstępnie zarys tematu widzę tak, że mógłbym:
- wczytać obydwa pliki do pamięci RAM do dwóch odrębnych tablic, których poszczególne elementy będą zawierały "rekordy" (dane od ^L do ^L);
- porównać potem poszczególne elementy powyższych tablic ("rekordy").
Pytania:
1) Nie wiem w jaki sposób podzielić wspomniane pliki danych na kawałki pod względem elementu ^L. Mógłby ktoś podpowiedzieć rozwiązanie?
2) Czym najlepiej było by porównywać "rekordy"? Chodzi o porównanie znak po znaku (linijka po linijce) danych tekstowych, zastanawiam się nad użyciem polecenia Unix diff...
3) Jakie problemy ewentualnie mogą być związane z wczytywanie tak dużych (~kilkaset MB) plików do RAM-u?
Dzięki za wszelką pomoc

Pozdrawiam,
Rafał.