首页 > 解决方案 > 如何在 PHP 中将 cron 表达式从本地时区转换为 UTC

问题描述

我有一个 PHP 应用程序,其中有一个 HTML 表单,它将 CRON 表达式和本地时区作为用户的输入。我想将本地时区中的 CRON 表达式转换为 UTC 时区,然后再将其保存到数据库中,反之亦然,当用户想要更新他们的 CRON 表达式/时区时。

就像我们如何date使用gmdate函数进行转换一样。

例如,0 6 * * *Asia/Kolkata (+5.5)区应转换为30 0 * * *UTC。

我试过什么?

我尝试分别捕获 CRON 表达式中的前 2 个值,它们基本上包括小时和分钟,然后像这样转换它们。

$schedule_cron_hour = $_POST['cron-time-hour'];
$schedule_cron_min = $_POST['cron-time-min'];

file_put_contents('2.txt', $schedule_cron_hour.":".$schedule_cron_min."  ".$schedule_cron."  ".$schedule_timezone);


date_default_timezone_set($schedule_local_timezone);


$schedule_cron_time = strtotime($schedule_cron_hour.":".$schedule_cron_min);

file_put_contents('1.txt', gmdate("H:i",$schedule_cron_time));

是否有任何功能或有效的解决方案来实现这一目标?

标签: phpcron

解决方案


推荐阅读