Skip to content

Instantly share code, notes, and snippets.

@revilon1991
Created August 18, 2022 18:31
Show Gist options
  • Save revilon1991/ef9e955dffbaca1ee5e61988e166ad18 to your computer and use it in GitHub Desktop.
Save revilon1991/ef9e955dffbaca1ee5e61988e166ad18 to your computer and use it in GitHub Desktop.
<?php
// here installed https://github.com/dragonmantank/cron-expression
require_once '/Users/ekuznetsov/projects/pamyatki/vendor/autoload.php';
// current time is 2022-08-18 18:30:30
date_default_timezone_set('Europe/Moscow');
$c = new \Cron\CronExpression('0 0 1 * *');
dump($c->getNextRunDate()->format('Y-m-d H:i:s'));
$m1 = $c->getNextRunDate();
$m2 = $m1->format('U');
$l1 = $c->getNextRunDate(timeZone: 'Europe/London');
$l2 = $l1->format('U');
dump([$m1, (new DateTime())->setTimestamp($m2)->format('Y-m-d H:i:s')]);
dump([$l1, (new DateTime())->setTimestamp($l2)->format('Y-m-d H:i:s')]);
dump(date_default_timezone_get());
// Какое и у кого будет время, если нам нужно отправить посылку 1го августа в 00?
// 1го августа в 00 часов Лондонского времени (по UTC это 31июля 23 часа) (по мск это 1го августа в 02 часа)
// 1го августа в 00 часов Московского времени (по UTC это 31июля 21 час) (по Лондону это 31июля 22 час)
// 1го августа в 00 часов UTC времени (по мск это 1е августа 03 часа) (по Лондону это 1е августа 01 час)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment