PHP를 사용하여 파일을 다운로드할 때 때로는 파일 크기를 얻을 수 없는 문제가 발생할 수 있습니다. 이 문제는 다음과 같은 이유로 발생할 수 있습니다.
이 문제를 해결하는 방법은 무엇입니까? 다음은 참고할 수 있는 몇 가지 해결 방법입니다.
$url = 'http://example.com/file.zip'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, true); curl_setopt($ch, CURLOPT_NOBODY, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $data = curl_exec($ch); $fileSize = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD); curl_close($ch);
$url = 'http://example.com/file.zip'; $opts = array( 'http' => array( 'method' => 'HEAD' ) ); $context = stream_context_create($opts); $fp = fopen($url, 'r', false, $context); $meta = stream_get_meta_data($fp); foreach ($meta['wrapper_data'] as $value) { if (stristr($value, 'content-length')) { $content_length = (int) trim(substr($value, 15)); } } fclose($fp);
요약하면, PHP가 파일 다운로드 시 파일 크기를 얻을 수 없는 문제를 해결합니다. , CURL을 사용하거나 서버 응답 헤더를 직접 가져와 파일 크기를 가져올 수 있습니다. 이러한 방법은 PHP 개발자가 파일 다운로드 프로세스를 더 잘 관리하고 제어하여 사용자 경험과 애플리케이션 성능을 향상시키는 데 도움이 될 수 있습니다.
위 내용은 PHP를 다운로드할 때 파일 크기를 가져오지 못하는 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!