Как я могу правильно обработать високосную секунду в своем приложении?Php

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

Сообщение Anonymous »

Я создаю приложения и хотел бы знать, как мне следует/могут справиться с дополнительной секундой. Я попытаюсь описать проблему на (надеюсь) простом примере. В этой простой ситуации вы можете легко возразить, что дополнительная секунда ожидания каждые +- 1,5 года может быть неуместна, но я все равно буду спать лучше, зная, что это работает правильно / так, как я хочу, во «всех» ситуациях :)



Ситуация



(Мы не учитываем никаких задержек, поэтому, когда пользователь нажимает кнопку, это происходит немедленно)

Вы есть игра, в которой вы создаете солдат.
  • На создание каждого солдата уходит 110 секунд.
  • Пользователи нажимают кнопку, чтобы создать 1 солдата в первый день - 23:58:30
  • Затем пользователь ожидает, что солдаты будут созданы 110 секунд позже. При обычном «вычислении даты и времени» ваше приложение получит день 2 — 00:00:20.
Теперь между днем ​​1 и днем ​​2 есть дополнительная секунда --> 23:59:60. Следуя этому методу, пользователь фактически будет ждать своего солдата 111 секунд.

Я предпочитаю использовать временную метку Unix. Таким образом, вам нужно будет добавить только 110 секунд к текущему времени в секундах. Но, насколько я знаю, это также не учитывает високосные секунды. В реальном времени вы все равно будете ждать 111 секунд.



Вопрос


Что мне следует сделать, чтобы пользователь или программа ждали ровно столько, сколько следует?< /p>

Существует ли часто используемая отметка времени, учитывающая дополнительные секунды?

Должен ли я всегда проверять наличие високосной секунды? (может ли это привести к значительному «перерасходу» мощности процессора?)

РЕДАКТИРОВАТЬ:
Я в основном работаю с Javascript (Node.js), но пример на C, php или Python тоже подойдет!

Подробнее здесь: https://stackoverflow.com/questions/379 ... pplication
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»