php腳本執(zhí)行定時任務(wù)的流程
1:swoole框架tick一個定時任務(wù)
2:shell腳本來操作操作這個任務(wù)的啟動,暫停,關(guān)閉,偽代碼:sh shell文件
3:web中利用PHP來執(zhí)行shell命令
整個閉環(huán)形成,可以在php開發(fā)的b/s架構(gòu)中使用,是不是總結(jié)得很簡單!
下面附上測試代碼
PHP定時任務(wù)代碼腳本文件
<?php
SwooleTimer::tick(3000, function (int $timer_id, $param1, $param2) {
echo "timer_id #$timer_id, after 3000ms.n";
echo "param1 is $param1, param2 is $param2.n";
SwooleTimer::tick(14000, function ($timer_id) {
echo "timer_id #$timer_id, after 14000ms.n";
});
}, "A", "B");
Shell腳本執(zhí)行PHP定時任務(wù)腳本文件
#!/bin/sh
# echo "直接時間開始============`date +%F' '%T`==========="
start() {
echo "============啟動成功==========="
}
stop() {
echo "============停止成功==========="
}
restart() {
echo "============重啟成功==========="
}
echo -e "===========服務(wù)啟動命令============ n n"
echo -e "1:啟動服務(wù) 2:停止服務(wù) 3:重啟服務(wù) 0:取消 n n"
echo -e "=================================== n n"
read -p "請輸入命令編號:" inputText #提示用戶輸入數(shù)字
if [ $inputText == 1 ]; then
start
elif [ $inputText == 2 ]; then
stop
elif [ $inputText == 3 ]; then
restart
elif [ $inputText == 0 ]; then
echo -e "n取消操作n"
fi
PHP執(zhí)行shell腳本文件
<?php
system('sh py.sh'); // 執(zhí)行shell命令