La deuxième ligne force le navigateur à présenter une boîte de téléchargement à l'utilisateur et lui demande le nom filename.zip. La troisième ligne est facultative mais certains navigateurs (principalement plus anciens) ont des problèmes dans certains cas sans que la taille du contenu ne soit spécifiée.
$ zipfilename devrait lire $ zipname - c'est le nom de fichier du zip créé sous forme de chaîne.
Chris
1
Il ne fonctionne pas dans l'ouvre-zip par défaut de Windows, mais fonctionne avec win zipper ou 7-zip. J'essaie d'ajouter une image dans le dossier zip, puis de la télécharger au format zip
RN Kushwaha
36
Voici un exemple de travail de création de ZIP en PHP:
$zip =newZipArchive();
$zip_name = time().".zip";// Zip name
$zip->open($zip_name,ZipArchive::CREATE);foreach($files as $file){
echo $path ="uploadpdf/".$file;if(file_exists($path)){
$zip->addFromString(basename($path), file_get_contents($path));}else{
echo"file does not exist";}}
$zip->close();
Vous êtes prêt à utiliser php zip lib, et pouvez également utiliser zend zip lib,
<?PHP
// create object
$zip =newZipArchive();// open archive if($zip->open('app-0.09.zip')!== TRUE){die("Could not open archive");}// get number of files in archive
$numFiles = $zip->numFiles;// iterate over file list// print details of each filefor($x=0; $x<$numFiles; $x++){
$file = $zip->statIndex($x);
printf("%s (%d bytes)", $file['name'], $file['size']);print"
";}// close archive
$zip->close();?>
Réponses:
Vous pouvez utiliser la
ZipArchive
classe pour créer un fichier ZIP et le diffuser au client. Quelque chose comme:et pour le diffuser:
La deuxième ligne force le navigateur à présenter une boîte de téléchargement à l'utilisateur et lui demande le nom filename.zip. La troisième ligne est facultative mais certains navigateurs (principalement plus anciens) ont des problèmes dans certains cas sans que la taille du contenu ne soit spécifiée.
la source
$zip = new ZipArchive;
place de$zip = new ZipFile;
?Voici un exemple de travail de création de ZIP en PHP:
la source
Créez un fichier zip, puis téléchargez le fichier, en définissant l'en-tête, lisez le contenu du zip et sortez le fichier.
http://www.php.net/manual/en/function.ziparchive-addfile.php
http://php.net/manual/en/function.header.php
la source
Vous êtes prêt à utiliser php zip lib, et pouvez également utiliser zend zip lib,
http://devzone.zend.com/985/dynamically-creating-compressed-zip-archives-with-php/
et il y a aussi php pear lib pour cela http://www.php.net/manual/en/class.ziparchive.php
la source