Я хочу знать, как я могу использовать PHP, чтобы спросить, если время больше, чем
8:30
и ниже чем
21:15
если я использую:
<?php
if ( (date("H")>8&&date("i")>30) && (date("H")<21&&date("i")<25) ) {
echo 'This website is closed from 08:30 - 21:25. Sorry for the Inconvenience.';
exit;
}
?>
Это не точный способ сказать, что, даже если время больше 8 и меньше 21, здесь есть минутная проверка …
Вы можете получить дату / время и полосу части даты. Это время можно сравнить с другими значениями времени. В приведенном ниже коде я вычисляю значения в секундах с полуночи для текущего времени, 8:30 и 21:15, а затем if
становится довольно просто:
define('SecondsPerDay', 86400);
define('SecondsPerHour', 3600);
define('SecondsPerMinute', 60);
$time = time () % SecondsPerDay;
$from = 8 * SecondsPerHour + 30 * SecondsPerMinute;
$to = 21 * SecondsPerHour + 15 * SecondsPerMinute;
if ($time >= $from && $time < $to) {
echo 'This website is closed from 08:30 - 21:25. Sorry for the Inconvenience.';
exit;
}
$startTime = '08:30';
$endTime = '21:15';
$time = new DateTime($startTime);
$time1 = date_format($time, 'H:i');
$time = new DateTime($endTime);
$time2 = date_format($time, 'H:i');
"Today is " . $current =date("H:i") . "<br>";
if ($current > $time1 && $current < $time2)
{
echo 'This website is closed from 08:30 - 21:25. Sorry for the Inconvenience.';
}else{
echo "It's open";
}