Подскажите как нормально получить позавчерашнее число.

neoweb

Новичок
Подскажите как нормально получить позавчерашнее число.

Как это можно сделать другим(нормальным) способом
date('d', mktime(0,0,0,date('m'),date('d')-2,date('Y'))); Цель получить позавчерашнее число.
Спасибо.
 

SaNeK

Новичок
PHP:
$day = 24 * 3600; // секунд в сутках

$now = time(); // timestamp на "сейчас"

$needday = $now - $day * 2; // вычитаем секунд на 2-е суток

echo date("Y-m-d", $needday);
 

hermit_refined

Отшельник
neoweb
вполне сносно. если придираться - три системных вызова time() вместо одного или использования $_SERVER['REQUEST_TIME'].
добавить обход перевода часов и все будет ок
да как бы тут уже учитывается.

SaNeK
а вот тут уже нет...
 

neoweb

Новичок
Автор оригинала: Фанат
neoweb
а чем тебя твой способ не устраивает?
Он устраивает. Не нравится то, что приходиться столько раз дергать функцию date. Думал можно как-то покрасивее это сделать. Всем спасибо!
 

Фанат

oncle terrible
Команда форума
детская болезнь оптимизации средней тяжести.
в качестве профилактики рекомендуется написать раз в жизни приложение, хотя бы минимальную реальную нагрузку на сервер.
 

hermit_refined

Отшельник
SaNeK
ну а где вы учитываете переход на летнее время?..
например - если вчера часы перевели на час вперёд, а сейчас у нас - пол первого ночи - ваши расчёты окажутся неверными.
потому - необходимо использовать mktime().
 

sad

Новичок
Автор оригинала: hermit_refined
neoweb
вполне сносно. если придираться - три системных вызова time() вместо одного или использования $_SERVER['REQUEST_TIME']
Если придраться... Вы уверены что обращение к памяти быстрее системного вызова? :)
 

hermit_refined

Отшельник
Если придраться... Вы уверены что обращение к памяти быстрее системного вызова?
флейма по поводу быстродействия я предпочел бы избежать.
потому, если хотите узнать, как работают операционные системы - почитайте какую-нибудь книжку.
 
Сверху