date()
возвращает локальную дату / время сервера, что означает, что если ваш сервер находится в США, например, пользователь из Восточной Азии или Австралии увидит неправильный фон.
IЯ знаю, что это не то, что вы искали, но я бы посоветовал сделать это с JS, который работает на стороне пользователя, а не на стороне сервера, и поэтому часовой пояс не будет иметь значения, поскольку скрипт будет получать время пользователя, а не серверавремя.Сценарий будет выглядеть примерно так:
var localDate = new Date();
if (localDate.getHours() > 7 && localDate.getHours() < 20) {
document.bgColor = "#fff";
} else {
document.bgColor = "#000";
}
Надеюсь, это поможет!