allons droit au but, j'aimerais créer une archive zip à partir d'une arborescence de dossiers et fichiers. J'ai trouvé ça
un bout de code je ne sais plus où :
avec le ziparchiver de boolcast j'arrive à créer l'archive, mais le problème c'est que tous mes fichiers sont à la racine du zip et ne conservent pas l'arborescence de départ...
un bout de code je ne sais plus où :
Code PHP:
/*
* $files is an array of filenames - not paths, e.g. [1.txt, 2.txt, ...]
* $destination is a full path to where the zip file will go
*/
/* creates a compressed zip file */
private function __zip($files, $destination = '') {
$zip_adapter = & JArchive::getAdapter('zip'); // compression type
$filesToZip[] = array();
foreach ($files as $file) {
$data = JFile::read(JPATH_SITE.DS.'tmp'.DS.$file);
$filesToZip[] = array('name' => $file, 'data' => $data);
}
if (!$zip_adapter->create( $destination, $filesToZip, array() )) {
global $mainframe;
$mainframe->enqueueMessage('Error creating zip file.', 'message');
}
}
avec le ziparchiver de boolcast j'arrive à créer l'archive, mais le problème c'est que tous mes fichiers sont à la racine du zip et ne conservent pas l'arborescence de départ...
Commentaire