我需要在中部时间上午9点到下午6点之间显示内容。我已经尝试了各种方法来做到这一点与php,但结果从来都不准确。我试过的一个例子是:
<?
$openTime = strtotime(date('Y-m-d').' 09:00:00');
$closeTime = strtotime(date('Y-m-d').' 18:00:00');
$currTime = strtotime('now');
if (($openTime <= $currTime) && ($currTime <= $closeTime)) { ?>
但这与我们服务器的时间从来都不准确。我们的服务器应该在美国中部时区,但是,上面的代码再次不起作用。
那么是否有一种方法可以指定时间与指定的时区一起使其正常工作?由于上面的代码不能准确地工作,看起来php使用的时区与我们服务器的时区不同。我想要的只是在中部时间上午9点到下午6点之间播放内容。我觉得我错过了一些明显的东西。谢谢!
使用Datetime('now', timezone)
获取当前时间
$curdate = new Datetime('now', new Datetimezone('America/Chicago'));
使用setTime
设置小时和分钟
$openTime = clone $curdate;
$openTime->setTime(9,0);
$endTime = clone $curdate;
$endTime->setTime(18,0);
使用:
设置时区date_default_timezone_set('Your time zone')
此处可用时区:可接受时区