定时任务如何通过web控制开关和设定时间

定时任务如何通过web控制开关和设定时间

黄威
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 5

用它shell_exec

2年前 评论

有一个扩展 GitHub搜一下 想不起来叫啥了

2年前 评论

packagist.org/packages/dragonmanta...

<?php
// 每一分钟执行一次本脚本
require_once '/vendor/autoload.php';

// 从数据库取出任务定时
// [ ['expression'=>'*/1 * * * *'], ['expression' =>'.....'], ['expression'=>'....'] ]
$data = $db->.....->get();
foreach ($data as $item) {
    $cron = new Cron\CronExpression($item['expression']);
    if ($cron->getNextRunDate()->format('Y-m-d H:i:s') == now()->format('Y-m-d H:i:s')) {
        exec('php xxx.php .... > /dev/null 2>&1 &');
    }
}
2年前 评论

通过数据库不是更好。定时任务每分钟都扫描所有定时任务,但执行过程可以由你自行控制,没有通过你的条件,就不往下执行即可

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!