Как настроить срок действия документа каждый день в 2 часа ночи на PHP?
header("Expires: " . date("D, j M Y", strtotime("now")) . " 02:00:00 GMT");
или
header("Expires: " . date("D, j M Y", strtotime("tomorrow")) . " 02:00:00 GMT");
// 2AM today $epoch = mktime(2,0,0,date('n'),date('j'),date('y')); // Go to tomorrow if current time > 2AM $epoch += date('H') >= 2 ? 86400 : 0; // Send header with RFC 2822 formatted date header('Expires: '.date('r', $epoch));
php :: header () ресурс
Вы хотите использовать:
//assuming getTimeUnitl2AM() returns time in seconds until 2am //if you need help implementing a function that returns //time until 2am ask $time = getTimeUntil2AM(); header("Expires: $time"); // set expiration time
Установите заголовок Expires -HTTP (например, см. Википедия ) с заголовком () . Вам просто нужно указать дату.
header("Expires: " . date('D, d M Y') . " 02:00:00 GMT");
* 1010 Дата * ()
Обратите внимание, что это время по Гринвичу. Возможно, вы хотите установить другой часовой пояс.
Вы можете использовать strtotime, чтобы получить метку времени Unix в 2 часа ночи и вычесть ее из текущего времени:
strtotime
$diff = strtotime('2 AM') - time(); if ($diff < 0) $diff += 86400;
Затем вы можете использовать эту разницу для Cache-Control s max-age :
header('Cache-Control: max-age='.$diff);