
24.06.2008, 17:30
|
|
Members of Antichat - Level 5
Регистрация: 09.05.2008
Сообщений: 304
С нами:
9477026
Репутация:
2362
|
|
Сообщение от Vid0k
пишу тестилку проксиков на пхп
засекаю время перед чтением с сокета через micotime()
после завершения чтения засекаю второе время
потом величину буфера делю на разницу времен и получаю вот эту шнягу
Начальное время: 1214312272.3718
Конечное время: 1214312275.5016
Разница: 3.129772901535
Скорость равна:6011.9377961166
PHP код:
<?
$wr_pic="http://www.2ip.ru";
$proxy = "82.94.187.199";
$port = 1080;
$buffer="";
$fp = fsockopen($proxy, $port);
fputs($fp, "GET $wr_pic HTTP/1.0\r\nHost: $proxy\r\n\r\n");
$time=0;
$time2=0;
$time=microtime(true);
while(!feof($fp)){
$buffer .= fread($fp,2500);
}
fclose($fp);
$time2=microtime(true);
$time3=0;
$time3=$time2-$time;
print "Начальное время: ".$time."<br>";
print "Конечное время: ".$time2."<br>";
print "Разница: ".$time3."<br>";
print "Скорость равна:".strlen($buffer)/$time3;
?>
поидеи должен был получить кол-во байтов в секунду но чот выдача меня не очень радует))
тк правильное использование microtime:
list($usec, $sec) = explode(" ", microtime());
При вызове без необязательного параметра, возвращается строка в формате "msec sec", где sec - это количество секунд, прошедших с начала Эпохи Unix (The Unix Epoch, 1 января 1970, 00:00:00 GMT), а msec - это дробная часть.
|
|
|