我正在尝试创建一个脚本来上传某个zip文件,当前为“test.zip”,然后将其解压缩。我在这个网站上找到了一些关于如何解压缩的答案,但却不知道如何在FTP服务器上做到这一点。全部使用PHP请。将.zip文件上传到FTP并使用PHP将其解压缩使用PHP
当前代码:
$zip = new ZipArchive;
$zip->open('test.zip');
$zip->extractTo('./');
$zip->close();
再次感谢:)
我正在尝试创建一个脚本来上传某个zip文件,当前为“test.zip”,然后将其解压缩。我在这个网站上找到了一些关于如何解压缩的答案,但却不知道如何在FTP服务器上做到这一点。全部使用PHP请。将.zip文件上传到FTP并使用PHP将其解压缩使用PHP
当前代码:
$zip = new ZipArchive;
$zip->open('test.zip');
$zip->extractTo('./');
$zip->close();
再次感谢:)
在解压缩之前,您可以使用表格上传压缩文件(仅限自己的管理区?/ 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的日期或相似的东西。
希望这会有所帮助。
其实我是指www-data组* – 2013-09-21 21:23:37
首先你应该上传的zip压缩包到服务器。 这里是一个如何在PHP中执行基本的FTP事情的例子。
http://www.php.net/manual/en/ftp.examples-basic.php
之后,你应该可以使用你在问题中所描述的方法来解压缩服务器上的文件。
Sry我忘了提及它,我已经创建了一个上传ZIP的脚本,只需要将它解压到机器上,我不知道如何配置这个方法来使用FTP会话。 – Beater
@Beater我不明白为什么你需要配置的东西。如果zip文件在机器上,并且您知道它的文件名,您可以将它解压缩,对吧? –
您或者需要访问您正在上传的计算机上的命令或程序,或者也可以上传可通过URL执行的脚本。如果您通过FTP上传到可运行PHP的Web服务器目录,请将zip文件和unzip.php文件上传到浏览器并加载unzip.php页面。
没有任何形式的访问,这是为了让其他人上传像PhpBB文件到他们的FTP目录..谢谢你试图帮助 – Beater
不幸的是,解压缩是一个需要在解压缩的机器上运行的命令发生。如果您没有SSH或Telnet访问权限,并且FTP帐户不包含可通过网络访问的文件夹,则一旦启动,就无法将其解压缩。不过,您可以创建一个清单文件来描述zip归档文件中的所有内容,并在需要的时候发送它。我其实不明白为什么你需要将它们解压缩,如果它不是一个网络访问的位置。 – wwwslinger
这是在您的FTP文件夹中提取的代码,下面的代码创建一个新的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';
}
这看起来像它会做的解压。你想以编程方式FTP吗?解压之前或之后?来自或解压缩的服务器? – halfer