![](/img/trans.png)
[英]Is there a way to copy the folder according to the changes in the day through PHP?
[英]Folder monitoring and event triggering according to folder status in php
當事件發生時,有一個文件夾在其中沒有特定時間復制xml文件。 我想用php方式檢查文件夾的狀態,當xml文件到達時,會觸發一個事件。(ex.call到xml解析器)。 那么這是監視文件夾並根據它的狀態觸發事件的最佳方式(在php中)? 感謝名單!
沒試過,但也許Inotify可以幫助你:
inotify是一個Linux內核子系統,用於擴展文件系統以注意對文件系統的更改,並將這些更改報告給應用程序。
有一個用於inotify的PHP擴展,請參閱Inotify 文檔和inotify PECL 。
如果你在linux上運行,另一種選擇是使用獨立於PHP的守護進程來監視目錄的變化。 您可以使用dnotify (由inotify廢棄),例如:
dnotify -a -r -b -s /path/ -e <command>;
每次修改其他文件夾中的一個文件時,它都會執行命令(-a -r -b -s =任何訪問/遞歸目錄查找/在后台/無輸出中運行)。
有關:
你應該看看FAM(文件更改監視器) 。 基於PHP 4的二進制擴展(beta狀態); 文件 。
我認為最簡單的方法是使用cron job每分鍾檢查一次文件夾。 另一個選項是從另一個腳本/程序觸發您的php腳本,該腳本/程序將新的xml文件復制到該目錄。 Cron使您可以每分鍾運行腳本。 如果您想要即時響應,您應該編寫一個shell腳本(http://aplawrence.com/Unixart/watchdir.html),constanlty在后台運行,或者可能是珍珠守護程序,您可以檢測新文件並觸發您的php腳本來檢查更改。
使用cron定期scandir()
目錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.