iamserge
@iamserge

Как в php получить время от удаленного сервера, чтобы полностью заменить время на котором запускается скрипт?

Не секрет в целом, что в php можно делать вот так например:

date_default_timezone_set("Europe/...");


Но все это будет точно так, как установлены часы на сервере. В частности, сам сервер может сверять время средствами ОС, с каким либо сервером времени. Который находится каждый раз в разных местах. Вот Windows, например, свой предложил. Думаю и Linux | Unix предлагает свои. Но дело в том, что в скрипте, нужно сделать синхронизацию с третьим сервером, так чтобы у нас с ними совпадало.

Проблема в том, что я понятия не имею как это верно сделать, просто потому что даже если я в функцию выше впишу что нужно. А у них часы вдруг "затормозят" и будет время неточное (отстанет, например, на пару минут). То у меня с ними пойдет все наперекосяк. То есть дело в том, что нам нужно делать неверно даже, но одновременно. Потому что потом мы можем все поправить под нужное время. Еще лучше, если бы мы вместе конечно использовали один сервер, я про него у них спрошу.

Но суть вопроса простая, как сделать так чтобы в php установить не "таймзон", а конкретно от удаленного сервера получить такую информацию, как бы его "таймзоном" пользоваться, чтобы он точно сообщил как у него, при этом скрипт локальное для него просто проигнорирует и все. Иначе просто смотреть на свой Windows, где чуть чуть не так, да еще вдруг у них еще чуть чуть не так, а потом в итоге вообще все будет не так ...

Можно и десять минут разницы получить запросто, а это уже много довольно. Если бы мы могли пользоваться одним, даже я бы поставил тот, который у них ... было бы проще. Но вот как это делать - вообще не знаю.
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 2
irishmann
@irishmann
Научись пользоваться дебаггером
Так синхронизируйте время на сервере, зачем с php так извращаться
Ответ написан
Immortal_pony
@Immortal_pony Куратор тега PHP
Во-певрых, на всех серверах можно прописать синхронизацию с одним и тем же NTP-сервером. Тогда всеря на них будет одинаковое.
Во-вторых, можно узнавать время непосредственно у сервера.
Например, сделать файл с таким содержимым:
<?= time() ?>

И открыть доступ к этому файлу снаружи. В этом случае все зависимые сервера, когда захотят получить информацию о времени просто сделают запрос на головной сервер и получат данные оттуда.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы