Я использовал следующий код для генерации zip
// push to download the zip
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
readfile($zip_name);
этот код работает нормально, но по неизвестным причинам он не работал, пока я не попытался
// push to download the zip
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$zip_name.'"');
echo file_get_contents($zip_name);
Мне интересно узнать, что происходит в обоих случаях