Login   Register  
PHP Classes
elePHPant
Icontem

File: examples.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Chris Volwerk  >  PHP Cron Scheduler Parser  >  examples.php  >  Download  
File: examples.php
Role: Example script
Content type: text/plain
Description: Usage Examples
Class: PHP Cron Scheduler Parser
Compute the time of scheduled jobs in cron format
Author: By
Last change:
Date: 1 year ago
Size: 2,210 bytes
 

Contents

Class file image Download
<?php

require('csd_parser.php');

$schedule "1 3 2-8/6 * 2,3";  // A scheduling definition
$basetime '27-05-2013 23:00'// A base time for consistancy in example
$format   'd-m-Y H:i (w)';    // Will output dates like this in example

// Now create a new parser, basetime is optional btw, it will default to the current time
$parser   = new csd_parser($schedule$basetime);


// Output next time cron should run, 3 different ways ("next" is default)
echo '<h3>Next runtime, 3 different ways</h3>';
echo 
date($format$parser->get()).'<br />';
echo 
date($format$parser->get('next')).'<br />';
echo 
date($format$parser->get(0)).'<br />';

// And the last time it was supposed to run, 3 different ways
echo '<h3>Last runtime, 3 different ways</h3>';
echo 
date($format$parser->get('last')).'<br />';
echo 
date($format$parser->get('prev')).'<br />';
echo 
date($format$parser->get(-1)).'<br />';

// The next 3 times it's supposed to run
echo '<h3>The next 3 runtimes</h3>';
for(
$i 0$i 3$i++) {
  echo 
date($format$parser->get($i)).'<br />';
}

// Try a different schedule
echo '<h3>Same as above, different schedule</h3>';
$parser = new csd_parser('0 0 15 * *'$basetime);
for(
$i 0$i 3$i++) {
  echo 
date('d-m-Y H:i (w)'$parser->get($i)).'<br />';
}

// Combined the above two schedules
echo '<h3>Combine the above two schedules and calc next 3 runtimes</h3>';
$schedule.= "\n0 0 15 * *";     // You can also use an array of schedules
$parser   = new csd_parser($schedule$basetime);
for(
$i 0$i 3$i++) {
  echo 
date('d-m-Y H:i (w)'$parser->get($i)).'<br />';
}

// All runtimes for the next three months
echo '<h3>All the runtimes in the next 3 months</h3>';
$untill '27-08-2013 23:00';
$times  $parser->get($untill);
foreach(
$times as $time) {
  echo 
date('d-m-Y H:i (w)'$time).'<br />';
}

// Quickly fetch with static function csd_parser::calc
//   Note that each call to the static function parses AND calculates everything anew
//   it will thus be slower if you want to calculate subsequent times
echo '<h3>Calc next runtime using the static function</h3>';
$time csd_parser::calc($schedule'next'$basetime);
echo 
date('d-m-Y H:i (w)'$time);

?>