Эта тема на forum.dklab.ru


Caps: 7-zip WinZip и gzip-файлы
Попытался написать код скрипта для загрузки gzip файлов с помощью функций Zlib-компрессии вида:

$file="dnld.gz";
$str="данныедляgzфайла данныедляgzфайла данныедляgzфайла";
$zp = gzopen("tmp/".$file, "wb");
//$str=gzcompress ($str);
gzwrite($zp, @$str);
gzclose($zp);
header("Content-type: application/x-gzip");
header("Content-Disposition: attachment; filename=tmp/$file");
echo $str;

Файл загружается, но не распаковывается ни с помощью 7-zip ни с помощью WinZip.
Хотелось бы понять в чем причина.
gzopen() > gzwrite() - это в принципе не верный путь? 7-zip не работает с такими файлами вообще или их нужно по-другому генерировать?
bæv:
http://phpfaq.ru/debug

Показанный код вообще выполняться не должен.
Caps:
Это, видимо, из-за ошибки в коде (лишняя скобочка затесалась). Исправил, проверил - работает.
dimagolov:
Caps, данные это не файл. WinZip сжимает/разжимает файлы, то есть там сохраняется а) сжатый файл и б) атрибуты файла. Ф-я gzwrite сжимает ТОЛЬКО данные, информация о файлах сохраняетмя в *NUX другой утилитой, tar.

попробуйте gzread-ом прочитать обратно строку из gz файла.

Эта тема на forum.dklab.ru