Как создать страницу PHP, которая будет определять скорость интернет-пользователя и показывать ее на странице? Что-то вроде,
Ваша интернет-скорость??? Kbps
Как создать страницу PHP, которая будет определять скорость интернет-пользователя и показывать ее на странице? Что-то вроде,
Ваша интернет-скорость??? Kbps
Возможно, это не совсем то, что вы ищете (прочитайте жирную часть), но я сомневаюсь, что что-то еще возможно.
Этот скрипт отправляет 512 КБ комментариев HTML вашему клиенту. Синтаксический анализ этого HTML-кода может увеличить общее время передачи, поэтому не принимайте это за скорость загрузки.
Цитата из: PHP Speed test
Источник здесь:
http://jan.moesen.nu/code/php/speedtest/index.php?source=1
Надеюсь, это поможет.
<?php
$kb=1024;
echo "streaming $kb Kb...<!-";
flush();
$time = explode(" ",microtime());
$start = $time[0] + $time[1];
for($x=0;$x<$kb;$x++){
echo str_pad('', 1024, '.');
flush();
}
$time = explode(" ",microtime());
$finish = $time[0] + $time[1];
$deltat = $finish - $start;
echo "-> Test finished in $deltat seconds. Your speed is ". round($kb / $deltat, 3)."Kb/s";
?>
Например, по запросу AJAX по времени на стороне клиента. Таким образом, вы можете определить приблизительную скорость загрузки, но не загружать. Для загрузки, отправка большого запроса AJAX POST может обрабатывать его.
С jQuery и $.ajax
это довольно тривиально.
Пользователь загружает файл на ваш сервер. Затем вы делите размер файла в kb со временем, прошедшим через секунды. Затем вы получаете kb/s (скорость загрузки).
$kb = round(filesize("file.jpg") / 1024); // 500kb
$time = time() - $start; // 5s
$speed = round($kb / $time); // 100kb/s
Это работает для меня:
$kb=512;
echo "streaming $kb Kb...<!-";
flush();
$time = explode(" ",microtime());
$start = $time[0] + $time[1];
for($x=0;$x<$kb;$x++){
echo str_pad('', 1024, '.');
flush();
}
$time = explode(" ",microtime());
$finish = $time[0] + $time[1];
$deltat = $finish - $start;
echo "-> Test finished in $deltat seconds. Your speed is ". round($kb / $deltat, 3)."Kb/s";
?>
Я получил это от здесь.
Невозможно. PHP является сторонним сервером, и скорость обнаружения будет клиентом.
Вы можете найти работу, чтобы сделать это, tho.