Создать ZIP-файл с помощью fopen () - PullRequest
4 голосов
/ 11 апреля 2011

Как создать ZIP-файл с помощью оболочки fopen () ? Это, очевидно, не путь:

<?php

if( class_exists('ZipArchive') ){
    echo 'Class ZipArchive exists, generating file...' . PHP_EOL;

    $fp = fopen('zip://' . dirname(__FILE__) . '/test.zip', 'w');
    if($fp){
        fwrite($fp, 'Lorem ipsum dolor sit amet, consectetur adipisicing elit.');
        fclose($fp);
        echo 'Done' . PHP_EOL;
    }else{
        echo 'Could not open file' . PHP_EOL;
    }
}else{
    echo 'Class Zip is not available' . PHP_EOL;
}

... потому что все, что я получаю, это:

Class ZipArchive exists, generating file...

Warning: fopen(zip://C:\tmp/test.zip) [http://es.php.net/function.fopen]: failed to open stream: operation failed in C:\tmp\test.php on line 6
Could not open file

1 Ответ

2 голосов
/ 15 апреля 2011

Я, наконец, предположил, что утверждение о том, что обертка zip: поддерживает запись, было ошибкой документации, и сообщил о ней как таковой .Сообщение об ошибке было принято и исправлено.

...