Ответ 1

date() сам предназначен только для форматирования, но он принимает второй параметр.

date("F j, Y", time() - 60 * 60 * 24);

Чтобы это было просто, я просто вычитаю 24 часа из отметки времени 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";

(Поскольку DateInterval здесь отрицательный, мы должны add() здесь)

Смотрите также: DateTime::sub() и DateInterval

Ответ 2

strtotime(), как в date("F j, Y", strtotime("yesterday"));

Ответ 3

Как легко:)

date("F j, Y", strtotime( '-1 days' ) );