Если я знаю FLV видео, , например:Как узнать размер размера flv от url?
www.domain.com/video.flv
Я не могу использовать «размер_файла», потому что он не в состоянии проверить размер от внешнего URL, верно?
Итак, как я могу узнать его размер?
Если я знаю FLV видео, , например:Как узнать размер размера flv от url?
www.domain.com/video.flv
Я не могу использовать «размер_файла», потому что он не в состоянии проверить размер от внешнего URL, верно?
Итак, как я могу узнать его размер?
Вы можете использовать CURL для получения заголовков удаленного файла, включая размер файла.
$url = 'http://www.domain.com/video.flv';
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$headers = curl_exec($ch);
$size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
curl_close($ch);
Установка CURLOPT_NOBODY истинно, делает CU не загружать тело запрашиваемого URL.
Вы можете использовать CURL для отправки запроса HTTP HEAD на URL-адрес, по которому вы хотите узнать размер файла. Сервер должен отправить обратно заголовок длины контента в свой ответ, указав размер файла в октетах (байтах).
Сервер, однако, не обязательно отправляет заголовок содержания. Если это не так, то ваш единственный вариант - фактически загрузить файл в полном объеме.
Я не могу использовать «размер файла», потому что он не может проверить размер с внешнего URL-адреса, не так ли?
Да can сделать это, но это немного смешно, чтобы сделать это, потому что URL обертки будут сначала скачать файл, а затем проверьте его размер.
Вы можете сделать запрос HEAD, который будет запрашивать у сервера размер файла без запроса данных файла.
Соответствующий фрагмент кода здесь:
Спасибо, это работает. :) – user1123379