Как измерить время загрузки файла (из браузера на сервер) в php с точки зрения сервера? - PullRequest
1 голос
/ 19 декабря 2011

Предоставляет ли php api для проверки скорости загрузки нескольких частей / данных формы или общей продолжительности?

Я также хочу узнать, как PHP узнает о различных событиях тайм-аута из настроек IIS и php.ini?

Ответы [ 3 ]

2 голосов
/ 19 декабря 2011

В $ _SERVER есть значение, которое вы можете проверить, чтобы узнать, когда был инициирован запрос. Из руководства по PHP:

'request_time' Отметка времени начала запроса. Доступно с PHP 5.1.0. Начиная с PHP 5.4.0, он с плавающей точкой микросекунд.

Таким образом, вы можете сравнить $ _SERVER ['REQUEST_TIME'] с текущим временем () с условием, что вы ограничены разрешением в 1 секунду, пока PHP 5.4 не станет широко распространенным.

1 голос
/ 19 декабря 2011

По первому вопросу, я полагаю, вы можете использовать переменную $ _ SERVER ['REQUEST_TIME'] для самостоятельного расчета вместе с time().

1 голос
/ 19 декабря 2011

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

Обычный способ получить эти данные на стороне клиента, используя flash или javascript или оба.Например, uploadify или swfupload являются отличными флэш-загрузчиками, которые обеспечивают ограничение размера файлов на стороне клиента и индикацию хода загрузки для пользователя.

Было бы намного проще, если бы можно было выполнить загрузку файлов, индикацию хода выполнения и ограничение размера файловсамим браузером: (

Ссылка:

http://www.uploadify.com/demos/

http://swfupload.org/

...