웹 사이트에서 큰 csv 파일을 다운로드하려고합니다. file_get_contents와 file_put_contents를 사용하라는 제안을 보았습니다.하지만 파일 크기 때문에 cURL과 파일 핸들 옵션을 사용하기로 선택했기 때문에 데이터는 PHP 메모리에 직접 저장됩니다.URL에서 파일을 다운로드하고 파일이 완전히 다운로드되었는지 확인하십시오.
그러나 전체 파일이 항상 다운로드되지 않는 이상한 오류가있는 것 같고 응답 헤더를 사용하지 않고 전체 파일이 다운로드되었는지 확인하는 방법이 확실하지 않습니다. cURL의 파일 핸들 옵션을 사용할 때 액세스 할 수 있습니다.
이것은 잠시 후에 파일을 가져 오는 데 사용하는 것입니다.
$ch = curl_init('*FILE_TO_GET*');
$fp = fopen('*WHERE_TO_FILE*', 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
파일 크기는 현재 약 3.8MB이지만 훨씬 더 커질 수 있습니다.
http://www.google.com/search?q=php+curl+response+header –
'curl_getinfo ($ ch)'를 시도하고 모든 매개 변수가 올바른지 확인하십시오. – SilentAssassin
@ KarolyHorvath 고맙지 만 이미 Google을 사용하는 방법을 알고 있습니다. 내가 찾을 수있는 모든 예제는 파일을 메모리에로드하여 헤더를 가져와야합니다. – James