Ожидаемый коллапс электронного пространства в y2k так и не состоялся, а следующий намечен на далёкий 2038-ой год.
Но такой ли он далёкий? Буквально сегодня пришлось столкнуться лицом к лицу с нависшей над миром угрозой.
Но такой ли он далёкий? Буквально сегодня пришлось столкнуться лицом к лицу с нависшей над миром угрозой.
В разрабатываемой системе все манипуляции с датами проводились через преобразование в unix timestamp и последующим его форматированием штатными средствами php (strtotime, mktime, strftime, date) и вся эта хрупкая конструкция разлетелась, когда вдруг возникла дата 01.01.2059. Нет, это не сумашедшие бета-тестеры и не опечатка – это оказался срок годности пива действия паспорта. Казалось выхода нет и человеку надо будет менять паспорт, но решение всё же нашлось: ADOdb Date Time Library – старенькая библиотечка на чистом php, которая позволит вам жить счастливо даже после официального окончания unix-эпохи.
Какие ещё беды настрадал нам Предсказамус?
Update: во какую штуку нашёл, надо бы донести это знание до тех, кому не безразлично…
Y2K38
Полезная инфа – не обращал ранее на это внимания. Растроило меня однако следующее, в мануале к ф-ции mktime() написано следующее:
Но на деле у себя под PHP 5.2.0-8 и под Debian x64 исправления проблемы обнаружить не удалось 🙁
Собственно информацию в сноске мануала я сразу проверил,а уж потом немного углубившись в теорию, понял, что вряд ли это действительно правда (может на будущее написали, в качестве TODO).