Zwei Dateien inhaltlich vergleichen (gleich oder ungleich?)
Jens
- php
0 AB0 Thomas Meinike
Hallo.
Ich möchte zwei Dateien dahingehend untersuchen, ob sie inhaltlich gleich sind oder nicht.
Wie kann ich das machen mit PHP? Hilft mir die Funktion stat() weiter? Oder sind die dort gemachten Angaben nicht ausreichend?
Oder muß ich wirklich (zumindest für den Fall, daß kein Größenunterschied besteht) beide Dateien zeilenweise auslesen und jede Zeile miteinander vergleichen? Geht das auch bei Binärdateien (z.B. jpg...)?
Eine Funktion filecompare() oder so gibt es ja leider nicht.
Wer weiß Rat?
Danke und viele Grüße
Jens
mit fopen() beide dateien öffnen, dannmit fread() beide Dateien lesen und schaun, ob das gleiche drinsteht. Keine garantie bei Binärfiles wie Bildern o.ä! Ausprobieren!
$f1=fopen("datei1.txt","r");
$f2=fopen("datei2.txt","r");
$text1=fread($f1, filesize("datei1.txt"));
$text2=fread($f2, filesize("datei2.txt"));
if($text1==$text2)
{...}
Ich glaube, man kann die datein auch irgendwie wieder schliessen, das macht PHP zwar automatisch, ist aber guter Stil. Alle PHP - Infos unter www.selfphp.info
Viel Glück
AB
Hallo,
Ich möchte zwei Dateien dahingehend untersuchen, ob sie inhaltlich gleich sind oder nicht.
Wie kann ich das machen mit PHP?
if(md5_file("datei1.abc") == md5_file("datei2.xyz"))
{
print "Die Dateien sind identisch.\n";
}
else
{
print "Die Dateien sind nicht identisch.\n";
}
MfG, Thomas