Как прочитать дату http_request, отправленную браузером? - PullRequest
0 голосов
/ 15 октября 2019

Мне нужно знать, во сколько именно HTTP-запрос из браузера был отправлен в мою PHP-программу на сервере. Я пытаюсь сделать это, потому что моей программе требуется синхронизация времени между сервером и клиентами.

В моем исследовании я увидел функцию getallheaders(), которая будет возвращать все заголовки http-запроса,но внутри никогда не было даты / времени. Мой код выглядит как

<?php

foreach (getallheaders() as $name => $value) {
    echo "$name: $value\n";
}

, а результат выглядит так:

Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:69.0) Gecko/20100101 Firefox/69.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1

Как видите, в заголовке нет date. Как я могу получить date http-запроса, используя PHP?

Ответы [ 2 ]

0 голосов
/ 15 октября 2019

Из PHP $_SERVER doc

'REQUEST_TIME' Метка времени начала запроса. Доступно с PHP 5.1.0.

'REQUEST_TIME_FLOAT' Метка времени начала запроса с точностью до микросекунды. Доступно с PHP 5.4.0.

0 голосов
/ 15 октября 2019

Попробуйте:)

<?php

$timestamp = $_SERVER['REQUEST_TIME']; 
$TimeRequest = gmdate("Y-m-d\TH:i:s", $timestamp); // convert Unix time :)

echo "Request sent at time : ".$TimeRequest;
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...