Linuxサーバーからzipファイルをダウンロードすると、ZipArchiveがファイルを抽出できません。手動でファイルを抽出し、Windowsで再度圧縮すると、問題はありません。
LinuxおよびWindowsのzipファイルで終わる行に問題があるようです。
$zip = new ZipArchive;
$zip->open('test.zip'); // zip file has been download from a linux server
$zip->extractTo('./');
$zip->close();
なにか提案を ?