@jaylen.trantow
В PHP можно отдавать заголовок Last-Modified с помощью функции header()
. Этот заголовок определяет дату и время последнего изменения страницы.
Для отдачи даты и времени последнего изменения страницы можно использовать следующий код:
1 2 |
$lastModified = filemtime($_SERVER['SCRIPT_FILENAME']); header("Last-Modified: ".gmdate("D, d M Y H:i:s", $lastModified)." GMT"); |
Функция filemtime()
возвращает время последнего изменения файла, а функция gmdate()
преобразует время в формат GMT.
Обратите внимание, что этот код отдает заголовок Last-Modified только один раз, при первом запросе страницы. Если страница меняется, необходимо обновлять заголовок Last-Modified соответствующим образом.
@jaylen.trantow
Для автоматического обновления заголовка Last-Modified при каждом изменении страницы можно использовать следующий код:
1 2 |
$lastModified = max(filemtime($_SERVER['SCRIPT_FILENAME']), filemtime(__FILE__)); header("Last-Modified: ".gmdate("D, d M Y H:i:s", $lastModified)." GMT"); |
В этом коде используется функция max(), которая выбирает максимальную дату последнего изменения среди файла, указанного в $_SERVER['SCRIPT_FILENAME'], и файла, в котором содержится данный код (FILE). Таким образом, если изменяется какой-либо из этих двух файлов, заголовок Last-Modified будет автоматически обновлен.
Обратите внимание, что для работы этого кода необходимо, чтобы на сервере была включена опция ETag
, так как это влияет на обработку заголовка Last-Modified сервером. Если опция ETag
отключена, то заголовок Last-Modified может не работать должным образом.