我想根据两个时间戳之间的时间范围显示消息

时间:2014-09-18 19:56:13

标签: php time

如果时间范围在给定范围之间,我的目标是显示消息如果不显示另一个范围。 我试过了;

date_default_timezone_set("Europe/Istanbul"); 
$saat = date("h:i");
if ($saat <='08:00' && $saat >='22:00') {
    echo ('yes we are open');
}
    else ('sorry we are closed');{
}

我知道如果时间介于范围之间我试图弄错,但我无法克服问题。 等待你的回复。

6 个答案:

答案 0 :(得分:2)

试试这个

date_default_timezone_set("Europe/Istanbul"); 
$saat = date("h:i");
if ($saat <='08:00' && $saat >='22:00') 
{
    echo 'yes we are open';
}
else 
{
    echo 'sorry we are closed';
}

答案 1 :(得分:2)

尝试以下方法。

    $saat = new DateTime(); 
    $open = new DateTime( $saat->format('Y-m-d').' 08:00',new DateTimeZone('Europe/Istanbul'));

  $close = new DateTime($saat->format('Y-m-d').' 22:00',new DateTimeZone('Europe/Istanbul'));

    if (($saat >= $open) && ($saat <= $close)) {
        echo 'yes we are open';
    }else{
        echo 'sorry we are closed';
    }

答案 2 :(得分:1)

最好在DateTime对象上执行小于/大于操作的操作。此外,我认为您的>=<=混淆了,而且您还有一个额外的支架。

我将$saat变量的名称更改为$now,以使其更易于理解。

date_default_timezone_set("Europe/Istanbul"); 

//Create a DateTime Object represent the date and time right now
$now = new DateTime(); 

//Today's Opening Date and Time
$open  = new DateTime( $now->format('Y-m-d').' 08:00' ); 

//Today's Closing Date and Time
$close = new DateTime( $now->format('Y-m-d').' 22:00' ); 

if ($now >= $open && $now <= $close) {
    echo ('yes we are open');
}
    else ('sorry we are closed');{
}

另一方面,我从不使用date()因为2038问题(谷歌)。 DateTime不会遇到此类问题。

答案 3 :(得分:0)

如果您不关心会议记录,可以像这样做

date_default_timezone_set("Europe/Istanbul"); 
$saat = date("h");
if ($saat<=8 && $saat>=22) {
  echo ('yes we are open');
} else { 
  echo('sorry we are closed');
}

答案 4 :(得分:0)

你可以像

一样使用你的条件
if (strtotime($saat) <=strtotime('08:00') && strtotime($saat) >=strtotime('22:00'))

答案 5 :(得分:0)

好的,这里是代码:

date_default_timezone_set("Asia/Karachi"); 
$t=time();
//echo(date("H:i",$t)); // Current Time
$hour = (date("H",$t)); // Current Hour
$minute = (date("i",$t)); //Current Minute


if (($hour <= 8)&&($hour >= 22)) {
    echo "We are open";
}
else {
    echo "sorry we are closed";
}