<?php
//Пакуем всё в архив---------
$tmp_dir=D.'/dir/src';//то что нужно паковать
$zip_file=D.'/dir/name.zip';
@unlink($zip_file);
$zip=new PclZip($zip_file);
$zip->create($tmp_dir, PCLZIP_OPT_REMOVE_PATH,D.'/dir/src');
$contents=file_get_contents($zip_file);
header("Content-type: application/zip");
echo $contents;
exit;
//--------------------------
?>
Такой вот код.. Собирает архив, и выдаёт его в браузер.
На денвере работает отлично. Но если установить скрипт на сервак, архив скачивается, но не открывается. Его можно открыть текстовым редактором, и видно, что в нём html код страницы, с которой производилось скачивание (чё за бред?)
Если же скачать сгенерированный архив по фтп, то он оказывается нормальным.. т.е. вроде бы архив генерируется правильно, но почему то не отдаётся.
Добавлено через 02:56 сек.
Ещё бредовее то, что если убрать header("Content-type: application/zip"); то в браузер выдается именно архив (в виде каракуль на экране), а не html код.
Добавлено через 07:50 сек.
Заметил, что касяк наблюдается в Опере, а в Firefox всё ок.
Changed: Валерий (17.04.2011 / 14:34)