Автор Тема: Работа со временем  (Прочитано 4111 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sonic

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Работа со временем
« : 29 Июля 2001, 09:59:49 »
Здравствуйте уважаемые.
Есть следующий вопросик: есть две переменные в которых храниться время в формате: год-месяц-день часы:минуты:секунды, для наглядности: 2001-07-29 09:58:12. Необходимо сравнить эти две даты и если первая больше чем вторая на 30 минут присвоить к примеру $a=1, а если разница между ними меньше чем 30 минут - то в $a=0. Как это всё можно было бы реализовать? Важен сам алгоритм.
Заранее спасибо.
Best regards

Оффлайн sarutobi

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 61
  • +0/-0
  • 0
    • Просмотр профиля
Работа со временем
« Ответ #1 : 29 Июля 2001, 13:19:36 »
Если те нужен алгоритм то вот он:
1. Разбираешь переменные с помощью функции Split на следующие части: Год Месяц Днеь Час Минута Секунда;
2. Используя функцию gmmktime ( Час, Минута, Секунда, Месяц, День, Год) - получаешь время в формате INT.
3. Делаешь тот же фокус со второй пременной
4. Сравнить два INT числа и принять решение ты сможешь сам :)

Оффлайн AliMamed

  • \\o/ ali akbar \\o/
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2409
  • +2/-0
  • 2
    • Просмотр профиля
    • http://alimamed.pp.ru
Работа со временем
« Ответ #2 : 29 Июля 2001, 13:56:47 »
как видно и совершенно правильного постинга sarutobi эти переменные лучше всегда хранить в формате UNIX timestamp
ну, будем исповедоваться?

Оффлайн Sonic

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 13
  • +0/-0
  • 0
    • Просмотр профиля
Работа со временем
« Ответ #3 : 29 Июля 2001, 19:43:58 »
Спасибо за ответы, конечно, лучше работать с униховым временем, но приходиться вносить изменения в уже готовый скрипт, который использует данные из Мускуля, которые вставляются NOW(). Приходиться выкручиваться :-)
Best regards

Оффлайн !ataMAN!

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 94
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.chainikam.net
Работа со временем
« Ответ #4 : 31 Июля 2001, 14:38:39 »
если используется скул, то многое можно сделать и без использования сторонних средств... там имеются готовые функции для работы с датами... например, проверить не прошло ли тридцать минут со времени в date можно таким образом: WHERE date>DATE_SUB(NOW(), INTERVAL 30 MINUTE)
Делаю и поддерживаю сайты о заработке бесплатно всем желающим!
Скажи чайникам - нет!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28