将.zip文件上传到FTP并使用PHP解压缩

时间:2013-09-21 21:10:33

标签: php upload ftp zip unzip

我正在尝试创建一个可以上传某个zip文件的脚本,当前是“test.zip”,然后将其解压缩。我在这个网站上找到了一些关于如何解压缩但又不知道如何在FTP服务器上执行此操作的答案。全部使用PHP Please。

当前代码:

$zip = new ZipArchive;
$zip->open('test.zip');
$zip->extractTo('./');
$zip->close();

再次感谢:)

4 个答案:

答案 0 :(得分:4)

在解压缩之前,您可以使用表单上传zip(创建自己的管理区域?/ localhost?)。我从我的代码中复制了这个以上传图片,并且只会上传.zip文件 HTML部分:

<form action='file.php' enctype='multipart/form-data' method='post'>
    <p>Please Upload a ZIP File.</p>
    <input type='file' name='file'>
    <input type='submit'/>
</form>

PHP部分:

$temp = explode(".", $_FILES["file"]["name"])[1]; //Get the extension
if($temp == "zip"){
    move_uploaded_file($_FILES["file"]["tmp_name"],"unzipme.zip") or die("Couldn't upload. Check permissions and retry.");
            //Relocate home?
    header("Location: /");
    exit();
}

您需要具有上传到您的目录,www-date或类似内容的权限。

希望这有帮助。

答案 1 :(得分:1)

首先,您应该将zip存档上传到服务器。 以下是如何在PHP中执行基本FTP操作的示例。

http://www.php.net/manual/en/ftp.examples-basic.php

之后,您应该能够使用问题中描述的方法解压缩服务器上的文件。

答案 2 :(得分:1)

您需要访问要上载到的计算机上的命令或程序,或者还能够上载可以通过URL执行的脚本。如果您通过FTP上传到可以运行PHP的Web服务器目录,那么将zip存档和unzip.php文件上传到那里并在浏览器中加载unzip.php页面。

答案 3 :(得分:1)

这是FTP中Extract文件夹的代码,在代码下面创建一个新的Php文件副本并运行它:

$path = getcwd();

$zip = new ZipArchive;

$res = $zip->open('yourZippedFolder.zip');

if ($res === TRUE) {

  $zip->extractTo($path.'/maunil/');

  $zip->close();

  echo 'Successfully Extracted';

}

else 
{

 echo 'failed to Extract';

}