разницу между двух дат

NilovSerge

Новичок
разницу между двух дат

Всем привет
Мне нужно получить разницу между двух дат (заданных асоциативными массивами) и записать ее в виде "6 minutes", "2 hours"
я перевожу эти даты в Timestamp с помощью mktime() и отнимаю от большей даты меньшую и от полученной разницы с помощью strftime( получаю кол-во
часов(ключ "%H") и минут и в полученных часах получаю +2 часа: А разве дата начала timestamp 1970-01-01 02:00:00 ? У меня получается так...
 

DiMA

php.spb.ru
Команда форума
чаще 1970-01-01 03:00:00 или 4, смотря на часовой пояс и летнее время

причем тут JavaScript?

если используются даты рождения, то для них 1970 не достаточно и unixtime непригодна
 

NilovSerge

Новичок
нет это пхп - Timestamp подходит
да я разобрался что это из-за часового пояса
А как учесть эти кол-во часов от часового пояса ?

-~{}~ 20.01.09 11:57:

кажется нашел - мне надо date("O")

-~{}~ 20.01.09 18:41:

Странно работает нормально на лдокальном компе и под Виндами
Под штатовским линуховым серверером проблемы:
2 даты :
Более рання 2009-01-20 09:08
и более поздняя 2009-01-20 09:29

И если от более поздней отнять болепе раннюю то получаю целое число 1279
и делаю strftime("%Y-%m-%d %H:%M",$DateTimeRes ) - порлучаю неправильную дату 1969-12-31 18:22 - и ествественно все отсльное неправильное

Это какие-то другие настройки на сервере ? В чем может быть проблема?
Там временная зона -6
 

Mols

Новичок
1279 cекунд это 21 минута 19 секунд. Проблема чтоли перевести секунды в дни-часы-минуты-секунды? Это вроде 5й класс.
 

dimagolov

Новичок
Mols, а теперь подумай, если там не минуты и не часы, а дни? а что будет если будет переход летнее-зимнее вреся? что ты получишь из секунд? не говоря о более длительных промежутках где математика 5-го класса плавно переходит в астрономию и службы точного времени что крайне не столь тривиально, как может показаться.
 

Mols

Новичок
? вроде задача о разнице не больше чем дни/часы. А летнее зимнее время это да. В принципе ещё 5-10 строк кода надо написать если регион известен(а может и вообще не придётся. Есть страны где не переходят на летнее зимнее время). Да и если промежутки больше чем дни(100 дней -500) - всё равно в днях диапазон можно показать. Так что замечание не принимаю)))
З.Ы.
Может я саму задачу не понял правда.
 
Сверху