Ciao attraverso una funzione ricorsiva leggo tutti nomi delle cartelle e sottocartelle che si trovano in un determinato percorso, e vorrei mettere questi nomi dentro ad un array multidimensionale in modo tale da ottenere una cosa del genere
codice:
Array
(
[AQUATHLON_web] => Array
(
[corsa_web] => corsa_web
[nuoto_web] => nuoto_web
[premiazioni_web] => Array
(
[singola] => singola
)
)
[nuoto] => nuoto
)
Ho tutto il codice che legge all'interno di una cartella e che inserisce i valori nell'array, ma come sotto cartelle mi viene presa sempre l'ultima che legge. Ho capito il motivo, in pratica bisognerebbe creare un sotto array dinamicamente, ma non so come. Questo è il codice php che ho.
Codice PHP:
$listaCTOT=array();
function getTotalListCart($dir,$cart='',$ar=''){
global $listaCTOT;
if (is_dir($dir)) {
if ($myDir = opendir($dir)) {
$tmpName=explode('/',$dir );
$tmpName=array_reverse($tmpName);
$new=array();
for($r=0;$r<count($tmpName);$r++)
if(!$tmpName[$r])
unset($tmpName[$r]);
else
$new[]=$tmpName[$r];
$tmpName=$new;
while (false !== ($myFile = readdir($myDir))) {
if(is_dir($dir.'/'.$myFile) && $myFile!='.' && $myFile!='..'){
if($cart)
$ar[$cart]=array($myFile=>$myFile);
else
$listaCTOT[$myFile]=$myFile;
if($ar)
$listaCTOT=$ar;
getTotalListCart($dir.'/'.$myFile,$myFile,$listaCTOT);
}
}
closedir($myDir);
return $listaCTOT;
}
}
}
Qualcuno sa aiutarmi?