我有一臺運行apache
的windows pc,並且我需要一個php
腳本來連續運行以收聽來自UDP port
的輸入,並採取所需的操作並將其發送回去。在我的服務器上運行一個循環的PHP腳本
我知道如何做到這一點的唯一方法是爲cmd
安裝curl
,然後運行php script
並使用WHILE loop
。我擔心的是,這是做錯的方式,並且可能不可靠並佔用大量的系統資源。
人們可以評論上述方法嗎?我聽說過cron ..但那隻適用於unix?我能做什麼?
我有一臺運行apache
的windows pc,並且我需要一個php
腳本來連續運行以收聽來自UDP port
的輸入,並採取所需的操作並將其發送回去。在我的服務器上運行一個循環的PHP腳本
我知道如何做到這一點的唯一方法是爲cmd
安裝curl
,然後運行php script
並使用WHILE loop
。我擔心的是,這是做錯的方式,並且可能不可靠並佔用大量的系統資源。
人們可以評論上述方法嗎?我聽說過cron ..但那隻適用於unix?我能做什麼?
嘿試試下面的解決方案。 使用bat文件並計劃執行該bat文件。
例如在bat文件executephp.bat
,寫這
c:\xampp\php\php.exe -f c:\xampp\htdocs\do_something.php
保存包含行bat文件。
轉到Windows調度程序,並創建一個新的任務,並在操作選項卡中,瀏覽指向該executephp.bat和開始 - >直接到目錄你有executephp.bat。
例如如果u將文件保存C:\xampp\htdocs
下提出,在開始C:\xampp\htdocs
英寸
記住調用即使不登錄的用戶腳本。
一切都設置好了,它會毫無問題地執行。
我有一個問題。有沒有一種方法可以調用打開的文件?用另一個系統的url鏈接說。一旦用戶調用它,它會以某種方式執行批處理文件..? – raaj 2013-02-18 04:02:47
我不知道在那... – 2013-02-18 04:26:32
Apache後面的PHP腳本始終有最大執行時間,因此應該在特定的超時後總是停止使用循環。
您應該更好地使用cron或像Venkat這樣的批處理腳本。有一些很棒的cron服務,它會向服務器發出GET請求並運行腳本。看看這個相關的線程:Scheduled Request to my website from an external source
這不符合您的需求?
任何想法它持續多久?我總是可以計時並重新打開它,但我想知道它持續多久無論如何 – raaj 2013-02-18 04:00:59
在這裏看一下PHP中的['max-execution-time'](http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time),它默認是30秒,對於Apache來說:''Apache有一個Timeout指令,IIS有一個CGI超時函數,默認爲300秒。「' – ConcurrentHashMap 2013-02-18 18:55:38
我聽說這可以用Windows任務調度程序完成?但是這不允許你說每分鐘都運行腳本。最糟糕的情況是,我必須在C#中編寫我自己的調度應用程序:( – raaj 2013-02-17 18:15:05