За последние 24 часа нас посетили 18904 программиста и 1616 роботов. Сейчас ищут 970 программистов ...

ZipArchive пустые строки

Тема в разделе "Прочие вопросы по PHP", создана пользователем Drek, 25 июн 2013.

  1. Drek

    Drek Новичок

    С нами с:
    25 июн 2013
    Сообщения:
    2
    Симпатии:
    0
    Всем привет. Возникла такая интересная проблема. Вообщем, есть архив загруженный на сайт, к примеру называется он files.zip, загружается он через file_get_contents и пишется на сервер и потом распаковывается.
    Но вот в чем проблема. Всё распаковывается, но в файле появляются левые строки, т.е. было
    Код (Text):
    1.  
    2. <?
    3. echo '1231;'
    4. echo '321';
    5. exit();
    Стало
    Код (Text):
    1.  
    2. <?
    3.  
    4. echo '1231;'
    5.  
    6. echo '321';
    7.  
    8. exit();
    Что с этим делать, подскажите.

    Вот сам код распаковщика.
    Код (Text):
    1.  
    2. $arhiv = file_get_contents(SERVER."files.zip");
    3. file_put_contents('files.zip', $arhiv);
    4. $zip = new ZipArchive;
    5. if ($zip->open('files.zip') !== TRUE){
    6.     ?>
    7.         <p style="color:red">Не удалось открыть архив. <a href="">Повторите попытку</a></p>
    8.     <?
    9.     exit();
    10. }
    11. $zip->extractTo(BASE_DIR);
    12. $zip->close();
    13. @unlink('files.zip');
    Думаю надо копать в сторону настроек сервера.

    P.S. Пробовал не пользоваться file_get_contents и file_put_contents.
     
  2. Drek

    Drek Новичок

    С нами с:
    25 июн 2013
    Сообщения:
    2
    Симпатии:
    0
    Нашёл в чём собственно проблема.
    Файл сохранен как dos & windows файл. Что означает что переносы строк у него \n \r.
    Для того что бы всё было окей нужно перевести файлы в nix формат где перенос строк \n.