无法使用 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 扩展名
我的网络服务器中有一个文件夹,我将需要解压缩的 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 扩展名