Как я могу сделать так, чтобы в php что-то происходило в определенное время, и это происходит в это время для каждого часового пояса? - PullRequest
3 голосов
/ 31 марта 2012

Я прочитал много разных сайтов и много разных решений, которые касаются часовых поясов и времени сервера и локального времени клиента / пользователя и т. Д., Но никто не объясняет подробно эту точную ситуацию, которую я пытаюсь достичь.

У меня есть этот php-код, срок действия которого истекает в определенную дату и время, и он прекрасно работает, но срок действия контента истекает только во время сервера. я хочу, чтобы он истекал во всех часовых поясах, когда это время наступит для этого часового пояса. Я не хочу, чтобы срок действия контента истек одновременно для всех часовых поясов.

так скажем, я хочу, чтобы срок действия чего-либо истекал в 2 часа дня, в самом первом часовом поясе, который дойдет до 2 часов дня, они не должны видеть просроченный контент, но остальные часовые пояса все еще должны его видеть. затем, когда второй часовой пояс достигает 2 часов дня, этот часовой пояс не должен видеть контент. поэтому теперь 2 часовых пояса не могут видеть контент, но остальные часовые пояса все равно должны его видеть. и это продолжается один часовой пояс за раз, пока все часовые пояса не достигли 14:00.

скажите, пожалуйста, как настроить этот php, чтобы все вышеперечисленное произошло.

<?php
$end_date = strtotime('02:00pm April 1, 2012');
$now = time();
if ($end_date < $now) {
?>
different content to display after date and time has arrived,
or don't put anything here if you just want expired content to disappear
and nothing else to take it's place.
<?php } else { ?>
content to display while the date and time hasn't arrived yet.
<?php } ?>

1 Ответ

0 голосов
/ 31 марта 2012

Вам требуется <select>User please select your timezone</select> (вплоть до +12 <> -12, и этот параметр должен выбирать КАЖДОГО пользователя, который попадает на ваш сайт - включая вас - для того, чтобы что-то подобное произошло.

Сервер не имеет представления о IP-адресе - какой пользователь находится в какой зоне, если только вы не решите его каким-либо образом.

Вы должны работать со временем по Гринвичу и разработать специальную функцию для обработки пользовательских (часовых поясов) входных данных для этогослучается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...