Как узнать размер файла на каком-то веб-сервере

Первый способ: скачать и посмотреть.

Второй способ описан здесь.

Чтобы это сделать, надо открыть сокет (установить соединение с удаленным веб-сервером). Сокет - это файл, в который можно писать и читать. Далее в сокет (как в файл) надо написать заголовок (HEAD filename ...). После считать из сокета то, что нам напишут. Для начала выведите это на экран, чтобы было понятно, что именно вам возвращают. В ответе сервера, что мы считаем, будет много полезной информации - тип и ОС сервера, дата модификации и размер файла, другая информации. Все, что надо - выдрать из текста нужное число и вывести его на экран.

<?

$fname='/path-to-file/big-big-big.mpg';
$fhost='www.super-mega.ru';

$x=0;
$fp = fsockopen($fhost, 80, &$errno, &$errstr, 30) or die("облом");

fputs($fp,"HEAD $fname HTTP/1.0\nHOST: $fhost\n\n");
while(!
feof($fp)) $x.=fgets($fp,128);
fclose($fp);

if (
ereg("Content-Length: ([0-9]+)",$x,$size)) echo "Размер файла $size[1] байт";
else echo
"Определить невозможно";

?>


Автор: нет данных