PHP文件上传和zip上传

PHP文件上传和zip上传

问题描述:

有没有人知道上传文件(.mp3或.wav或.txt或.whatever)的好方法,并在移动到目录之前压缩此文件?PHP文件上传和zip上传

因此,用户上传.mp3文件之前,此文件被移动到特定的目录,它将被压缩,然后移动。

请指教。

谢谢

看看在zip扩展:

http://www.php.net/manual/en/zip.examples.php

我看着你链接到代码(如果你在问题中包含它,它会一直好)和做了一些更改:

$nameFile = $_FILES['file']['name']; 
$tmpName = $_FILES['file']['tmp_name']; 
$download_folder = './files/'; 

$zip = new ZipArchive(); 
$fileconpress = $download_folder.$nameFile.".zip"; 

$conpress = $zip->open($fileconpress, ZIPARCHIVE::CREATE); 
if ($conpress === true) 
{ 
    $zip->addFile($tmpName); 
    $zip->close(); 
    echo $fileconpress."<br/>"; 
    echo "yess !! Success!!!! "; 
} 
else echo " Oh No! Error"; 

重要的部分和可能是什么导致您的错误是$ download_folder。您需要定义要保存文件的路径。

我也去掉了fread(),您可以将文件只加载直接与addFile()

+0

不是为我工作。我首先需要保存临时文件,之后我可以将它们压缩成一个zip文件。直接将tmp文件保存为zip文件对我无效。它只创建zip文件,但不包含任何内容。 – 2015-11-13 20:18:22

+0

我知道它太晚了..addfile作为2个参数,所以可能你应该这样做'$ zip-> addFile($ tmpName,$ giveAfilename.jpg);' – Jeeva 2017-02-22 05:30:56

您可以使用PHP的运行shell命令,并使用它们来使第三方软件/你的OS来压缩能力的压缩对象的为你的文件。看 - http://php.net/manual/en/function.shell-exec.php

或出现邮编扩展PHP看到的 - http://php.net/manual/en/book.zip.php

+0

http://www.facebook.com/topic.php?uid=122203764461419&topic=337我正在使用它,但我不明白文件存储在哪里!你可以帮帮我吗? – 2011-06-09 19:48:49