1. 程式人生 > >PHP在windows系統中定時任務的實現

PHP在windows系統中定時任務的實現

@echo off

cls

::判斷Apache伺服器是否啟動

for /f "skip=3 tokens=4" %%i in ('sc query Apache) do set "zt=%%i" &goto :next

:next

if /i "%zt%"=="RUNNING" (goto 1)

if /i "%zt%"=="STOPPED" (goto 2)

:1

::隱藏CMD視窗執行

if "%1" == "h" goto begin

mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit

:begin

cd..

set rootDir=%cd%

cd..

::是Apcahe的bin目錄,應包含Apache.exe檔案

cd bin

set taskFile=timer.php

if exist "%rootDir%\%taskFile%" (goto exephp) else (echo err)

:exephp

echo %date:~0,10% %time:~0,8% Apache正常執行,推送待辦中...

echo 請保留此視窗或最小化執行

php -q "%rootDir%\%taskFile%"

exit

:2

echo %date:~0,10% %time:~0,8% Apache未執行

pause