如何显示小时范围

时间:2011-11-24 22:41:27

标签: php mysql

我有一个数据库表,以TIME格式存储餐馆的营业时间作为时间范围。例如,如果餐厅的营业时间是'上午9点至下午5点',那么将有2列'hours_open'和'hours_close',我在'hours_open'中存储9:00,在'hours_close'中存储17:00。我需要做的是显示小时范围,例如:上午9:30上午10:00上午10:30上午11:00上午11:30至下午5:00

有人能指出我正确的方向吗?

3 个答案:

答案 0 :(得分:5)

$start = strtotime('6:00am');
$end = strtotime('09:00am');
$range = array();
while ($start !== $end)
{
    $start = strtotime('+30 minutes',$start);
    $range[] = date('h:ia', $start);
}
print_r($range);

答案 1 :(得分:1)

答案 2 :(得分:0)

在我当前的项目中,我不得不循环浏览一天中的24小时...,并希望它们以某种格式显示。

$interval = new DateInterval('PT1H'); // creating the interval for 1hour
$date = new DateTime();    
$end = clone($date);
$hoursRange = new DatePeriod($date, $interval ,$end->modify("+24 hours"));

然后我所要做的就是使用foreach遍历hoursRange值。

foreach ($hoursRange as $key => $value)
{
    echo $value->format('ga');
}