Все ленты — последние статьи

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

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

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

Чтобы это сделать, надо открыть сокет (установить соединение с удаленным веб-сервером). Сокет — это файл, в который можно писать и читать. Далее в сокет (как в файл) надо написать заголовок (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.0nHOST: $fhostnn");
while(!feof($fp)) $x.=fgets($fp,128);
fclose($fp);

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

?>