我正在尝试获取一个选择框,其中包含从00:00到24:00的时间增量列表。
时间增量是显示时间的秒数关联数组,如下所示:
1800 => 00:30
然后,当有人选择日期时,我计划将日期(例如2016/9/16)转换为秒,然后将他们选择的时间添加到这些秒中,以获取活动的日期时间。
为此,我正在生成这样的时间增量。
public function getIntervals($start_time = '00:00', $end_time = '24:00', $increments = '30')
{
$today = strtotime(date('Y/m/d', time())); // seconds for 2016/9/16
$seconds_start = strtotime(date('Y/m/d', time()) . ' ' . $start_time) - $today;
$seconds_end = strtotime(date('Y/m/d', time()) . ' ' . $end_time) - $today;
while ($seconds_start < $seconds_end) {
$intervals[$seconds_start] = date("H:i", $seconds_start);
$seconds_start = strtotime('+' . $increments . ' minutes', $seconds_start);
}
return $intervals;
}
但是我的时间间隔是一小时。
如果有人选择了“上午01:00的2016/9/17”,则上午01:00的秒数为“ 0 ”。
如果我在strtoseconds('2016/9/17')中添加' 0 ',我将在'00:00 '中获得'2016/9/17 。
所以我在这里,一个小时。我认为这是由于我的服务器时间设置为巴黎+1小时,但是我不知道如何解决它。
$timediff = 3600;
$paris_00_time = strtotime(date('Y-m-d '.'00:00'));
$paris_selected_time = $paris_00_time+1800;
$my_time = date('Y-m-d H:i:s',$paris_selected_time-$timediff);
print_r($my_time);
您可以声明$timediff=3600;
(1小时)
$paris_00_time = strtotime(date('Y-m-d '.'00:00'));
在某人选择日期(例如:)[1800] => 00:30
并提交后,您可以处理日期
$paris_selected_time = $paris_00_time+1800;
$my_time = date('Y-m-d H:i:s',$paris_selected_time-$timediff);
输出:2016-09-15 23:30:00
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句