定时器、时区、服务器端时间、客户端倒计时

Timer, timezone, server side time, client side countdown

本文关键字:客户端 倒计时 时间 服务器端 时区 定时器      更新时间:2023-09-26

我最近启动了一个项目(在这里),我遇到了一个计时器/时间问题:

我有一个密友,每天跑步两次:法国时区的午夜和中午。

我想显示一个"倒数到下一页",这实际上是一个倒数到cronjob。

我有点困,因为当我开始思考与时间和时区相关的事情时,我的大脑就会冻结。

我知道我应该占用服务器端的时间,并在客户端计时器中显示我的变量(而不需要获取客户端的时间),但基本上就是这样

我真的很感激你的建议!

提前感谢大家!

您可以使用php DateTime进行此操作。

  • 当前时间
  • 中午时间
  • 午夜时间

下面是一个例子。

$now = new DateTime;
$morning = new DateTime('08:00');
$night = new DateTime('22:00');
// next time is night
if( $now > $morning && $now < $night )
{
    $time = $now->diff($night);
} 
// next time is day
else 
{
    $time = $now->diff($morning);
}
$target = $time->format('%h:%i:%s'); // returns a string.

您应该使用Keith Wood的倒计时计时器:http://keith-wood.name/countdown.html

它非常容易使用。

你所要做的就是

$('#timer').countdown({
    until: '<?php echo date("h:i:s"); ?>' // change this, obviously
});

这是小提琴:http://jsfiddle.net/tqyj4/289/