Php 在时间范围内回显文本

Php 在时间范围内回显文本,php,Php,我有一个脚本来显示从今天起三天的营业时间。 脚本工作正常,但现在我想显示当前是打开还是关闭 如果当前时间在今天的结束时间之后($openingsuur_vandaag[1]),我想显示“CLOSED” 让我们从脚本开始: <?php $i = 0; $periodes = array(); $periodes[$i]['start'] = '2020-01-01'; $periodes[$i]['stop'] = '2020-12-31'; $periodes[$i]['open'] =

我有一个脚本来显示从今天起三天的营业时间。 脚本工作正常,但现在我想显示当前是打开还是关闭

如果当前时间在今天的结束时间之后($openingsuur_vandaag[1]),我想显示“CLOSED”

让我们从脚本开始:

<?php
$i = 0;
$periodes = array();
$periodes[$i]['start'] = '2020-01-01';
$periodes[$i]['stop'] = '2020-12-31';
$periodes[$i]['open'] =  array(null,"10:00","09:00","09:00","09:00","09:00","10:00");
$periodes[$i]['dicht'] = array(null,"16:00","10:00","18:00","18:00","14:00","15:00"); 
$periodes[$i]['behalve'] = array();
$periodes[$i]['behalve'][0]['dag'] = "2020-06-01";
$periodes[$i]['behalve'][0]['open'] = null;
$periodes[$i]['behalve'][0]['dicht'] = null;
$i++;
echo getOpeningsuren(time(), $periodes);

function getOpeningsuren($date, $periodes)
{
    $resultaat = '';
    $a = date("d-m-Y");
    $b = date("d-m-Y",strtotime('tomorrow'));
    $c = date("d-m-Y",strtotime('tomorrow + 1 day'));
    $m_nu = new datum();
    $m_morgen = new datum();
    $m_morgen->add(0,0,1);
    $m_overmorgen = new datum();
    $m_overmorgen->add(0,0,2);
    $openingsuur_vandaag = getOpeningsuur($m_nu, $periodes);
    $openingsuur_morgen = getOpeningsuur($m_morgen, $periodes);
    $openingsuur_overmorgen = getOpeningsuur($m_overmorgen, $periodes);
    $resultaat = $resultaat . $a. '&nbsp;&nbsp;'. ($openingsuur_vandaag[0] == null ? 'gesloten' : 
    $openingsuur_vandaag[0].' - '. $openingsuur_vandaag[1].' uur') .'<br>';
    $resultaat = $resultaat . $b. '&nbsp;&nbsp;'. ($openingsuur_morgen[0] == null ? 'gesloten' : 
    $openingsuur_morgen[0].' - '. $openingsuur_morgen[1].' uur') .'<br>';
    $resultaat = $resultaat . $c. '&nbsp;&nbsp;'. ($openingsuur_overmorgen[0] == null ? 'gesloten' : 
    $openingsuur_overmorgen[0].' - '. $openingsuur_overmorgen[1].' uur') .'';
    return $resultaat;
}
function getOpeningsuur($date, $periodes)
{
    $periodestart = new datum();
    $periodestop  = new datum();
    foreach ($periodes as $periode)
    {
        $periodestart->setDatetime($periode["start"] ." 00:00:00");
        $periodestop->setDatetime($periode["stop"] ." 00:00:00");
        if ($date->getTime() < $periodestart->getTime())
            continue;
        if ($date->getTime() > $periodestop->getTime())
            continue;
        foreach ($periode['behalve'] as $uitzondering)
        {
            if ($date->getDate() == $uitzondering['dag'])
            {
                return array($uitzondering['open'], $uitzondering['dicht'] );
            }
        }
        return array($periode['open'][ $date->dag_vd_week() ], $periode['dicht'][ $date->dag_vd_week() ] );
    }
    return array(null, null);
}
class datum
{
    function datum( $tijd=0 )
    {
        ($tijd ? $tijd=$tijd : $tijd = time() );
        $this->dagen_kort = array("zo", "ma", "di", "wo", "do", "vr", "za" );
        $this->setTime( $tijd );
    }
    var $jaar;
    var $maand;
    var $dag;
    var $uur;
    var $minuut;
    var $seconde;
    var $dagen_kort;
    function setTime( $time )
    {
        $this->jaar = date("Y", $time);
        $this->maand = date("m", $time);
        $this->dag = date("d", $time);
        $this->uur = date("H", $time);
        $this->minuut = date("i", $time);
        $this->seconde = date("s", $time);
    }
    function getTime()
    {
        return mktime($this->uur, $this->minuut, $this->seconde, $this->maand, $this->dag, $this->jaar);
    }
    function setDatetime($datetime)
    {
        $dt = explode (" ", $datetime);
        list($this->jaar, $this->maand, $this->dag) = explode("-", $dt[0]);
        list($this->uur , $this->minuut, $this->seconde) = explode(":", $dt[1]);
    }
    function getDate()
    {
        return str_pad($this->jaar, 4, "0", STR_PAD_LEFT) .'-'. str_pad($this->maand, 2, "0", STR_PAD_LEFT) 
        .'-'. str_pad($this->dag, 2, "0", STR_PAD_LEFT);
    }
    function dag_vd_week()
    {
        return date("w", $this->getTime());
    }
    function setVars($jaar=-1, $maand=-1, $dag=-1, $uur=-1, $minuut=-1, $seconde=-1)
    {
        ($jaar > -1 ? null : $this->jaar = $jaar);
        ($maand > -1 ? null : $this->jaar = $maand);
        ($dag > -1 ? null : $this->jaar = $dag);
        ($uur > -1 ? null : $this->jaar = $uur);
        ($minuut > -1 ? null : $this->jaar = $minuut);
        ($seconde > -1 ? null : $this->jaar = $seconde);
    }
    function add($jaar=0, $maand=0, $dag=0, $uur=0, $minuut=0, $seconde=0)
    {
        $nieuwe_tijd = mktime($this->uur + $uur, $this->minuut + $minuut, $this->seconde + $seconde, $this- 
        >maand + $maand, $this->dag + $dag, $this->jaar + $jaar);
          $this->setTime($nieuwe_tijd);
    }
}
?>
$OFFICETIME  = date("h:i"); // current time
if ($openingsuur_vandaag[1] > $OFFICETIME ) { // today's closing time - current time
    echo "closed";
}
else{echo "open";}