无法使用 php 解压缩文件

Can't unzip file with php

我的网络服务器中有一个文件夹,我将需要解压缩的 zip 文件放入其中。我想用 php 做到这一点,这是我尝试过的但它不起作用:

<?php
$file = $_GET["file"];
$zip = new ZipArchive;
$res = $zip->open($file+'.zip');
$zip->extractTo('./');
$zip->close();
?>

zip 文件与 php 文件位于同一文件夹中,但是当我转到 php 页面时,它什么也没做。

通过一些测试,我发现脚本在 $zip = new ZipArchive; 行死掉了

我怎样才能让它工作?

试试这个代码。同时将 $zip->open($file+".zip"); 更改为 $zip->open($file);+(加号) 不是 php

中的连接运算符
<?php
    // $_GET["file"] is set to `a.zip`

    $file = $_GET["file"];
    $zip = new ZipArchive;
    $res = $zip->open($file);
    $zip->extractTo('./');
    $zip->close();
?>
<?php

$fileName = $_GET['file'];  // get file name in the URL param "file"

if (isset($fileName)) {    // if $fileName php variable is set than    


    $zip = new ZipArchive;          // create object
    $res = $zip->open($fileName);   // open archive
    if ($res === TRUE) {
      $zip->extractTo('./');        // extract contents to destination directory
      $zip->close();               //close the archieve    
      echo 'Extracted file "'.$fileName.'"';
    } else {
      echo 'Cannot find the file name "'.$fileName.'" (the file name should include extension (.zip, ...))';
    }
}
else {
    echo 'Please set file name in the "file" param';
}

?>

注:-更多详情请参考https://www.php.net/manual/en/class.ziparchive.php

我找到问题了。 代码没问题,但托管服务不行,而且他们现在没有可用的 ZIP 扩展名