Это время, когда я нажимаю кнопку отправки в моей HTML-форме или время, когда она прибывает на сервер?
<?php echo $_SERVER['REQUEST_TIME']; ?>
Редактировать:
Я уже прочитал руководство, другие источники Googled, включая SO. Самое ясное определение, которое я нашел, по-прежнему является для меня неоднозначным, поскольку я не знаю, что означает начало запроса, точно в определении ниже.
'Request_time'
Временная метка начала запроса . Доступно с PHP 5.1.0.
http://php.net/manual/en/reserved.variables.server.php
Это может означать момент, когда запрос покидает клиент, или момент, когда он прибывает на сервер. Это не всегда одно и то же, особенно если скорость сети низкая и латентность высокая.
Изменить 2:
Это не вопрос «только потому, что». Мне нужно поддерживать услугу по заказу продуктов питания, а у людей с плохим интернетом часто возникают проблемы: иногда они думают, что мы получаем заказ, когда мы этого не делаем, в других случаях они думают, что мы не получаем его, когда делаем. Поэтому я установил тайм-аут XHR, чтобы сообщить пользователю, что запрос занял слишком много времени, поэтому она должна попробовать еще раз. Но тайм-аут происходит только на стороне клиента: запрос все еще поступает на сервер. Таким образом, серверу необходимо знать время отправки, а не получение, так что он может быть уверен, что это не время ожидания запроса, который должен быть отброшен.
У вас уже есть выбранный ответ, но я только что видел ваше редактирование с объяснением …
Вот что я сделал бы:
Пользователь делает запрос на сервер> Сервер отвечает немедленно, чтобы сообщить клиенту, что ответ был получен, и закрывает соединение с клиентом> в то же время, сервер продолжает обрабатывать запрос «в фоновом режиме».
Для этой цели я написал этот небольшой вспомогательный класс: asyncTask
Вот пример:
<?php asyncPage::startOutput(); // get all the user input here $myVar = $_POST['myvar']; // etc // send a message back to the client echo "Your request is being processed"; // close the connection to the client asyncPage::sendOutput(); // the rest of the request can now be processed without // making the client wait for the results.
Если вам нужно, чтобы клиент обновлялся с фактическим ходом запроса и не хотел попасть в сокеты, вы можете создать таблицу базы данных, которая обновляет ход запроса и записывает некоторый javascript для опроса сервера, чтобы получить статус запрос.
Преимущество заключается в том, что вам не нужно беспокоиться о том, что клиент неожиданно отключился, и они получат быстрый ответ, что будет большим улучшением в работе с пользователями.