Ludo237
13-04-2011, 19:08
Ciao a tutti :ciapet:
Ecco il mio problema di oggi ...
Tramite questo piccolo script creo un menù con tutte le cartelle in una determinata Directory (definita con la costante) e per ogni cartella visualizzo il nome.
<div id="colonna">
<?php
define("Dir","principale/") ;
$NomeDirectory = $file->Apri_cartella(Dir) ;
foreach($NomeDirectory as $cartella)
{
?>
<div class="lettera">
<?php
echo basename($cartella) ;
?>
</div>
<?php
}
?>
</div>
questa è la funzione Apri_file
function Apri_Cartella($cartella)
{
if (is_dir($cartella))
{
if ($this->diropen = opendir($cartella))
{
while (($this->files = readdir($this->diropen)) !== false)
{
if($this->files == ".." || $this->files == ".") ;
else $this->array_file[] = $this->files ;
}
closedir($this->diropen);
}
}
asort($this->array_file) ;
return $this->array_file ;
}
cosi facendo funziona tutto, il mio problema è che esce un accozzaglia di nomi (anche se lo stile css li stampa in modo carino e presentabile)
la mia domanda è
"Posso creare degli indici dinamici?" mi spiego
io ho 5 cartelle principale/a, principale/ab, principale/b, principale/bc, principale/c
con lo script sopra ora ottento a ab b bc c
io vorrei creare qualcosa di questo genere
A
a ab
B
b bc
C
c
per farlo pensavo di prendere la prima lettera della cartella (durante il foearch del primo script postato) e confrontarlo in qualche modo per creare l'indicizzazione, avete qualche idea ?
Ecco il mio problema di oggi ...
Tramite questo piccolo script creo un menù con tutte le cartelle in una determinata Directory (definita con la costante) e per ogni cartella visualizzo il nome.
<div id="colonna">
<?php
define("Dir","principale/") ;
$NomeDirectory = $file->Apri_cartella(Dir) ;
foreach($NomeDirectory as $cartella)
{
?>
<div class="lettera">
<?php
echo basename($cartella) ;
?>
</div>
<?php
}
?>
</div>
questa è la funzione Apri_file
function Apri_Cartella($cartella)
{
if (is_dir($cartella))
{
if ($this->diropen = opendir($cartella))
{
while (($this->files = readdir($this->diropen)) !== false)
{
if($this->files == ".." || $this->files == ".") ;
else $this->array_file[] = $this->files ;
}
closedir($this->diropen);
}
}
asort($this->array_file) ;
return $this->array_file ;
}
cosi facendo funziona tutto, il mio problema è che esce un accozzaglia di nomi (anche se lo stile css li stampa in modo carino e presentabile)
la mia domanda è
"Posso creare degli indici dinamici?" mi spiego
io ho 5 cartelle principale/a, principale/ab, principale/b, principale/bc, principale/c
con lo script sopra ora ottento a ab b bc c
io vorrei creare qualcosa di questo genere
A
a ab
B
b bc
C
c
per farlo pensavo di prendere la prima lettera della cartella (durante il foearch del primo script postato) e confrontarlo in qualche modo per creare l'indicizzazione, avete qualche idea ?