Возможный дубликат:
Получите отметку времени сегодня и вчера в php
Мне было интересно, был ли простой способ получить вчерашнюю дату в этом формате:
date("F j, Y");   date() является только для форматирования, но он принимает второй параметр. 
 date("F j, Y", time() - 60 * 60 * 24); 
Чтобы это было просто, я просто вычитаю 24 часа из timestamp unix.
  Современный oop-подход использует DateTime 
 $date = new DateTime(); $date->sub(new DateInterval('P1D')); echo $date->format('F j, Y') . "\n"; 
Или в вашем случае (более читаемый / очевидный)
$date = new DateTime(); $date->add(DateInterval::createFromDateString('yesterday')); echo $date->format('F j, Y') . "\n";-$date = new DateTime(); $date->add(DateInterval::createFromDateString('yesterday')); echo $date->format('F j, Y') . "\n";
  (Поскольку DateInterval здесь отрицательный, мы должны add() сюда) 
  См. Также: DateTime::sub() и DateInterval 
  strtotime() , как в date("F j, Y", strtotime("yesterday")); 
Как легко 🙂
 date("F j, Y", strtotime( '-1 days' ) );