有什麼方法能利用php監控檔案夾內的檔案的變化

來源:互聯網
上載者:User
1、我在stack overflow上看到有人說利用md5來實現連結為http://stackoverflow.com/ques...。請各位告知我,如何?的,3Q
2、還有沒有其他的方法能實現監控呢?

回複內容:

1、我在stack overflow上看到有人說利用md5來實現連結為http://stackoverflow.com/ques...。請各位告知我,如何?的,3Q
2、還有沒有其他的方法能實現監控呢?

1.通過scandir()擷取本目錄下面所有的檔案;
2.foreach遍曆檔案,用md5file()儲存檔案md5值到其他目錄的檔案OR資料庫(為什麼不是數組等變數?因為變數在每次執行都會被清空);
3.用cron或windows的計劃任務執行,把之前的md5列錶轉換成數組,然後用array_diff()比較之前的md5列表與當前scandir()取到的md5檔案清單,如果有返回結果,說明有檔案被修改、刪除或添加。

你可以試試目錄的mtime和ctime

Linux核心有一個事件驅動的Inotify機制(C文檔),支援監聽目錄和檔案變化.
PHP也有這麼一個PECL擴充綁定了這套Inotify操作.
http://pecl.php.net/package/i...
http://cn.php.net/manual/zh/b...
或者你用PHP調用inotify-tools提供的命令工具也可以.

綜合上面兩位兄弟的說法,這個看你的需求,如果是做到即時的就用inofiy,如果是需要時確定類似於提交代碼時的檔案差異的話,就可以通過md5值等檔案指紋的方式。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.