Ich habe ein Skript geschrieben, das durch alle Dateien in einem Verzeichnis liest und MD5-Hash für jede Datei zurückgibt. Es macht jedoch nichts für eine ziemlich große Datei. Ich nehme an, dass der Interpreter einen Wert für die maximale Verarbeitungszeit hat, und da es zu lange dauert, um diesen Wert zu erhalten, springt er einfach zu anderen Dateien. Gibt es trotzdem eine MD5-Prüfsumme für große Dateien über PHP? Wenn nicht, könnte es durch einen Chron-Job mit cpanel getan werden? Ich habe es dort versucht, aber es scheint nicht, dass mein Befehl md5sum jemals verarbeitet wurde: Ich bekomme nie eine E-Mail mit dem Hash. Hier ist das PHP, das ich bereits geschrieben habe. Es ist ein sehr einfacher Code und arbeitet Datei für Dateien eine vernünftige Größe:Get MD5 Checksum für sehr große Dateien
function md5_dir($dir) {
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo nl2br($file . "\n" . md5_file($file) . "\n\n");
}
closedir($dh);
}
}
}
Was ist "eine ziemlich große Datei"? Wie groß ist die Dateigröße? –
Randnotiz: MD5 ist keine Prüfsumme, es ist ein Hash. Außerdem ist es nicht sicher. –
Ich nahm törichterweise an, dass das md5-Tool die md5-Prüfsumme ausgibt. XD Ich versuche eine 1-Gig-Datei zu machen. – fny