我有以下代码,它显示夏令时生效并返回正确的日期和时间,以及正在使用的时区版本。然而,"白天"当地时间晚上11点,而不是晚上10点,晚上时间"需要表现出来。我一点都不擅长编码,也无法找到最好/最简单的方法来获得我想要的东西。请任何人帮忙吗?
<?php
date_default_timezone_set('Australia/Adelaide');
$hour = idate('H');
if (($hour >= 6 && $hour <= 22)) {
// after 6am and before 10pm
$daytime = true;
if ($daytime === true) {
print "Daytime";
}
}
else {
// 10pm to 6am the next day
$daytime = false;
if ($daytime === false) {
print "Night time";
}
}
?><br />
<?php date_default_timezone_set('Australia/Adelaide');
echo date("I, l, F jS, Y, h:i:s",time());
?><br /><br />
<?php echo timezone_version_get(); ?>
答案 0 :(得分:0)
$hour = date("H:i");
if (($hour >= date("06:01") && $hour >= date("22:00")) {
如果DayTime = 06 - 10和NightTime = 10 - 06
的范围,您还需要比较分钟由于他们持有相同的时间,唯一的区别是他们的时间。 通过这样,比较是DayTime = 06:01 - 22:00,除此之外将是NightTime