PHP에서는 그렇게 할 수 없습니다. time()
또는 microtime()
을 사용하면 하나 이상의 명령이 수행 한 전체 시간 만 가져올 수 있습니다.
네트워크 계층 데이터에 액세스 할 수있는 도구가 필요합니다. cURL은이 작업을 수행 할 수 있지만 아직 수행하지 않은 경우 enable php curl해야합니다.
PHP는 결과를 가져 와서 처리 할 수 있습니다.
<?php
// Create a cURL handle
$ch = curl_init('http://www.example.com/');
// Execute
curl_exec($ch);
// Check if any error occurred
if (!curl_errno($ch)) {
$info = curl_getinfo($ch);
echo 'Took ', $info['total_time'], ' seconds to send a request to ', $info['url'], "\n";
}
// Close handle
curl_close($ch);
당신은
- "FILETIME"
- "TOTAL_TIME"
- "namelookup_time"
- "connect_time"
- 같은
$info
에서 정보의 무리가 "pretransfer_time "
- "starttransfer_time "
- "대기 "시간
starttransfer_time
해야한다"전체 목록은 here이 (가) 볼 수 있습니다
"redirect_time - pretransfer_time
, 그래서 귀하의 경우에 당신이 필요 :
$wait = $info['starttransfer_time'] - $info['pretransfer_time'];
[microtime()] (http://php.net/manual/en/function.microtime.php)보다는 'time()'. – CD001
[PHP를 사용하여 서버 응답 시간을 얻는 방법] (https://stackoverflow.com/questions/34059737/how-to-get-server-response-time-using-php) –
의 가능한 복제본 원하는 경우 세분화 된 첫 번째 바이트까지의 시간과 같은 통계를 보려면 [Curl] (http://php.net/manual/en/book.curl.php)과 같은 하위 레벨 라이브러리를 사용해야합니다. 'curl_get_info' 함수는 필요한 것을 가질 것입니다. – iainn