ホームページ >バックエンド開発 >PHPチュートリアル >PHPを使用してフォルダー内のファイルの変更を監視する方法はありますか?
1. スタック オーバーフローで、リンクを達成するために md5 を使用していると誰かが言っているのを見かけました。 http://stackoverflow.com/ques.... 3Q
2. モニタリングを達成する方法を教えてください。
1. スタック オーバーフローで、リンクを達成するために md5 を使用していると誰かが言っているのを見かけました。 http://stackoverflow.com/ques.... 3Q
2. モニタリングを達成する方法を教えてください。
1. scandir()
を通じてこのディレクトリ内のすべてのファイルを取得します。 scandir()
获取本目录下面所有的文件;
2.foreach
遍历文件,用md5file()
保存文件md5值到其他目录的文件OR数据库(为什么不是数组等变量?因为变量在每次执行都会被清空);
3.用cron或windows的计划任务执行,把之前的md5列表转换成数组,然后用array_diff()
比较之前的md5列表与当前scandir()
2. foreach
を使用してファイルを保存します。ファイル md5 値を他のディレクトリのファイルまたはデータベースに保存します (なぜ配列などの変数は使用できないのでしょうか? 変数は毎回クリアされるため)。
scandir()
によって取得された現在の md5 ファイル リストを比較します。結果が返された場合、それはファイルが保存されたことを意味します。変更、削除、または追加。
ディレクトリのmtimeとctimeを試すことができます
Linux カーネルには、ディレクトリとファイルの変更の監視をサポートするイベント駆動型の Inotify メカニズム (C ドキュメント) があります。
PHP には、この一連の Inotify 操作をバインドする PECL 拡張機能もあります
http://pecl.php.net/package。 / i...
http://cn.php.net/manual/zh/b...
上記の 2 人の兄弟の発言に基づくと、リアルタイムの場合は、コードを送信するときと同様にファイルの違いを確認する必要がある場合は、md5 値などのファイル フィンガープリントを使用できます。 🎜