Stavo scrivendo una funzione per creare archivi zip solo che mi va in loop e mi da errore...
Codice PHP:
function contenutoCartella($percorso)
{
$apri = opendir($percorso);
$i=0;
while (false !== ($files = readdir($apri))) //...qui
if ($files != '.' && $files != '..')
{
$c=$files;
$contenuto[$i]=$c;
$i++;
}
return $contenuto;
}
function scriviZip($doveScriverlo, $datiZip)
{
fopen($doveScriverlo,"w+");
$zip = new ZipArchive();
$zip->open($doveScriverlo);
$NuoviDati=$datiZip;
do
{
if(is_dir($datiZip))
{
$zip->addEmptyDir($NuoviDati);
$listafile=contenutoCartella($NuoviDati);
for($i=0;$i!=count($listafile);$i++)
{
$NuoviDati.="/".$listafile[$i];
scriviZip($doveScriverlo,$NuoviDati);
}
}
else
{
$zip->addFile($NuoviDati, $NuoviDati);
if($NuoviDati!=$datiZip){
$NuoviDati=explode("/", $NuoviDati);
$NuoviDati[count($NuoviDati)-1]=null;
$NuoviDati=implode("/", $NuoviDati);
}
}
}while ($NuoviDati!=$datiZip);
}
mi dareste una mano a correggere l'errore e magari anche a completare la funzione?