Heim >Backend-Entwicklung >PHP-Tutorial >Gibt es eine Möglichkeit, mit PHP Änderungen an Dateien in einem Ordner zu überwachen?
1. Ich habe jemanden auf Stack Overflow gesehen, der sagte, dass MD5 verwendet wird, um den Link zu http://stackoverflow.com/ques zu implementieren.... Bitte sagen Sie mir, wie ich das erreichen kann. 3Q
2 Gibt es andere Methoden, um eine Überwachung zu erreichen?
1. Ich habe jemanden auf Stack Overflow gesehen, der sagte, dass MD5 verwendet wird, um den Link zu http://stackoverflow.com/ques zu implementieren.... Bitte sagen Sie mir, wie ich das erreichen kann. 3Q
2 Gibt es andere Methoden, um eine Überwachung zu erreichen?
1. Holen Sie sich alle Dateien in diesem Verzeichnis über scandir()
;
durchsuchen Sie die Dateien und verwenden Sie foreach
, um den MD5-Wert der Datei in der Datei ODER in anderen Verzeichnissen zu speichern ( Warum nicht Arrays und andere Variablen? Da die Variablen bei jeder Ausführung gelöscht werden); Vergleichen Sie die vorherige MD5-Liste mit der aktuellen md5file()
Die MD5-Dateiliste wird abgerufen. Wenn ein Ergebnis zurückgegeben wird, bedeutet dies, dass einige Dateien geändert, gelöscht oder hinzugefügt wurden.
array_diff()
scandir()
Sie können die mtime und ctime des Verzeichnisses ausprobieren
Der Linux-Kernel verfügt über einen ereignisgesteuerten Inotify-Mechanismus (C-Dokument), der die Überwachung von Verzeichnis- und Dateiänderungen unterstützt.
PHP verfügt auch über eine solche PECL-Erweiterung, die diesen Satz von Inotify-Vorgängen bindet. pecl. php.net/package/i...http://cn.php.net/manual/zh/b...
Oder Sie können PHP verwenden, um das von inotify bereitgestellte Befehlstool aufzurufen. Werkzeuge.
Basierend auf dem, was die beiden Brüder oben gesagt haben, hängt es von Ihren Anforderungen ab. Wenn Sie Dateiunterschiede ähnlich wie bei der Übermittlung von Code ermitteln müssen, können Sie Dateifingerabdrücke wie MD5-Werte verwenden . Weg.