로컬 서버에서 zip 파일을 HD로 다운로드하려고합니다.PHP가 .zip 파일을 잘못 다운로드하고 있습니다.
$zip = new ZipArchive;
$zip->open($archive, ZipArchive::CREATE);
$files = scandir($dir);
unset($files[0], $files[1]);
foreach ($files as $file) {
$zip->addFile($dir.'/'.$file);
}
$zip->close();
$download=$archive;
header("Content-Disposition: attachment; filename=\"Reports". $stocktake_id. ".zip");
header("Pragma: public");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
이 파일은 다운로드하지만, 그것의 크기가 잘못이며 형식 중 하나를 잘못되었거나 파일이 손상되는 것을 말하고, 제대로 열리지 않습니다됩니다.
데이터를 가져 왔는지 확인 했습니까? $ 파일에있는 내용은 무엇입니까? –
코드는 헤더 만 설정하므로 출력이 실제로 비어 있다고 가정해야합니까? –
로컬 서버에서 확인할 수 있으므로 zip 파일이 올바르게 생성됩니다. 내가 자동으로 다운로드 할 수 있기를 원하는 이유는 서버에서 파일을 가져 오는 방법을 모르는 우리 회사의 덤 - 덤 (dum-dum) 때문입니다. – ArtleMaks