zoukankan      html  css  js  c++  java
  • PHP Cron Expression Parser ( LARAVEL )

    Latest Stable Version Total Downloads Build Status

    The PHP cron expression parser can parse a CRON expression, determine if it is due to run, calculate the next run date of the expression, and calculate the previous run date of the expression. You can calculate dates far into the future or past by skipping n number of matching dates.

    The parser can handle increments of ranges (e.g. */12, 2-59/3), intervals (e.g. 0-9), lists (e.g. 1,2,3), W to find the nearest weekday for a given day of the month, L to find the last day of the month, L to find the last given weekday of a month, and hash (#) to find the nth weekday of a given month.

    More information about this fork can be found in the blog post here. tl;dr - v2.0.0 is a major breaking change, and @dragonmantank can better take care of the project in a separate fork.

    Installing

    Add the dependency to your project:

    composer require dragonmantank/cron-expression

    Usage

    <?php
    
    require_once '/vendor/autoload.php';
    
    // Works with predefined scheduling definitions
    $cron = CronCronExpression::factory('@daily');
    $cron->isDue();
    echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
    echo $cron->getPreviousRunDate()->format('Y-m-d H:i:s');
    
    // Works with complex expressions
    $cron = CronCronExpression::factory('3-59/15 6-12 */15 1 2-5');
    echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
    
    // Calculate a run date two iterations into the future
    $cron = CronCronExpression::factory('@daily');
    echo $cron->getNextRunDate(null, 2)->format('Y-m-d H:i:s');
    
    // Calculate a run date relative to a specific time
    $cron = CronCronExpression::factory('@monthly');
    echo $cron->getNextRunDate('2010-01-12 00:00:00')->format('Y-m-d H:i:s');

    CRON Expressions

    A CRON expression is a string representing the schedule for a particular command to execute. The parts of a CRON schedule are as follows:

    *    *    *    *    *
    -    -    -    -    -
    |    |    |    |    |
    |    |    |    |    |
    |    |    |    |    +----- day of week (0 - 7) (Sunday=0 or 7)
    |    |    |    +---------- month (1 - 12)
    |    |    +--------------- day of month (1 - 31)
    |    +-------------------- hour (0 - 23)
    +------------------------- min (0 - 59)
    

    Requirements

    • PHP 7.0+
    • PHPUnit is required to run the unit tests
    • Composer is required to run the unit tests
  • 相关阅读:
    公用表表达式(CTE)的递归调用
    c# 如何让tooltip显示文字换行
    实战 SQL Server 2008 数据库误删除数据的恢复
    SQL SERVER数据库中 是否可以对视图进行修改删除
    asp.net中实现文件批量上传
    sql server 2008学习2 文件和文件组
    sql server 2008学习3 表组织和索引组织
    sql server 2008学习4 设计索引的建议
    sql server 2008学习10 存储过程
    .net 调用 sql server 自定义函数,并输出返回值
  • 原文地址:https://www.cnblogs.com/mouseleo/p/10248819.html
Copyright © 2011-2022 走看看