Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php:是否可以从URL中提取zip文件而不将zip写入磁盘?_Php_Url_Zip_Extract_Unzip - Fatal编程技术网

php:是否可以从URL中提取zip文件而不将zip写入磁盘?

php:是否可以从URL中提取zip文件而不将zip写入磁盘?,php,url,zip,extract,unzip,Php,Url,Zip,Extract,Unzip,我从一个URL抓取zip文件,然后我将zip复制到磁盘上,只是为了从磁盘抓取并解压缩它。我想消除将zip写入磁盘以优化它的步骤。这是我的密码 $url_zip = 'http://returns_my_zip_file'; $new_file = '/zip_name.zip'; if (!copy($url_zip, $new_file)) { //<--- I want to eliminate this step. echo "\n\nFailed to copy file.

我从一个URL抓取zip文件,然后我将zip复制到磁盘上,只是为了从磁盘抓取并解压缩它。我想消除将zip写入磁盘以优化它的步骤。这是我的密码

$url_zip = 'http://returns_my_zip_file';
$new_file = '/zip_name.zip';
if (!copy($url_zip, $new_file)) { //<--- I want to eliminate this step.
    echo "\n\nFailed to copy file...\n\n";
}

$zip = new ZipArchive;
if(is_readable($new_file)) {
    $zip = new ZipArchive;
    if ($zip->open($new_file) === TRUE) {
        $zip->extractTo('ExtractToThisFolder');
        $zip->close();
        echo 'ok';
    } else {
        echo 'failed';
    }
}

提前感谢。

根据,zip文件的元数据位于末尾,因此无法轻松进行流式传输。正如Jake所说,您很可能不能,但您可能可以执行类似于将其写入的操作php://memory 而不是磁盘。取决于您的服务器和设置。我只是看着那个乔恩,谢谢!