Как я могу проверить, является ли файл для загрузки .zip или .rar перед загрузкой?
Существует множество неизвестных имен файлов без расширения, например:
0001;0002;0034;000345;....
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="file.zip');
header('Content-Disposition: attachment; filename="file.rar');