PHP Think Crontab是一款專業(yè)的定時(shí)任務(wù)管理工具,它能夠輕松地實(shí)現(xiàn)自動(dòng)化任務(wù)執(zhí)行。如果你現(xiàn)在需要一個(gè)簡(jiǎn)單而強(qiáng)大的自動(dòng)化任務(wù)執(zhí)行系統(tǒng),那么你一定會(huì)喜歡 PHP Think Crontab 。
這里,我們要介紹的是 ThinkPHP中的定時(shí)任務(wù)管理工具,它的運(yùn)行方式配置極其簡(jiǎn)單。
// 新建一個(gè)定時(shí)任務(wù)
php think make:command CommandName
// 自定義定時(shí)任務(wù)的執(zhí)行時(shí)間,例如每天上午 9 點(diǎn)執(zhí)行
class CommandName extends Command
{
protected function configure()
{
$this->setName('test:run')
->setDescription('this is a test command');
}
protected function execute(Input $input, Output $output)
{
// 執(zhí)行自定義的命令
Log::info(date('Y-m-d H:i:s', time()));
}
protected function schedule(Schedule $schedule)
{
// 定義定時(shí)任務(wù)的時(shí)間周期
$schedule->command('test:run')->dailyAt('09:00');
}
}
// 運(yùn)行定時(shí)任務(wù)命令
php think make:schedule
通過(guò)以上命令,會(huì)自動(dòng)生成一個(gè)調(diào)度器類,你就可以在這里按照需要來(lái)定義需要運(yùn)行的定時(shí)任務(wù)了。
你可以定義定時(shí)任務(wù)的執(zhí)行時(shí)間、執(zhí)行頻率及執(zhí)行機(jī)器 IP 等,非常靈活??梢噪S便配置,寫起來(lái)很舒適。
// 常規(guī)的使用方法
$schedule->command('test:run')->dailyAt('09:00');
// 每分鐘執(zhí)行一次
$schedule->command('test:run')->everyMinute();
// 定時(shí)任務(wù)執(zhí)行時(shí)間范圍設(shè)置
$schedule->command('test:run')->between('09:00', '17:00');
// 每天的工作日?qǐng)?zhí)行一次
$schedule->command('test:run')->weekdays()->daily();
除此之外,PHP Think Crontab 還支持執(zhí)行多臺(tái)服務(wù)器的任務(wù),可以實(shí)現(xiàn)多機(jī)監(jiān)管等高級(jí)功能。
最后,PHP Think Crontab 還支持任務(wù)執(zhí)行的結(jié)果回調(diào),可以根據(jù)不同結(jié)果作出不同的處理方式。不錯(cuò)過(guò)任何一次機(jī)會(huì)。
總而言之,PHP Think Crontab 具有全面、簡(jiǎn)單、靈活、可擴(kuò)展的優(yōu)勢(shì),是一款值得推薦的自動(dòng)化任務(wù)管理工具。如果你是個(gè)需要自動(dòng)化任務(wù)管理的人,那么 PHP Think Crontab 必須是你的首選。