|
| Sortering af liste over mappeindhold Fra : Brian Emilius |
Dato : 05-12-04 11:18 |
|
Hej NG
Dette script kender I vel allesammen:
if ($handle = opendir('../../data/filer')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file<br>\n";
}
}
closedir($handle);
}
Men hvordan får jeg det til at sortere listen ASC eller DESC?
Venlig hilsen
Brian Emilius
| |
Peter Brodersen (05-12-2004)
| Kommentar Fra : Peter Brodersen |
Dato : 05-12-04 11:50 |
|
On Sun, 5 Dec 2004 11:18:02 +0100, "Brian Emilius" <msn@emilius.dk>
wrote:
>Men hvordan får jeg det til at sortere listen ASC eller DESC?
I stedet for at echo'e $file ud, så tilføj hver $file til et array,
sortér arrayet efterfølgende med sort() eller en lignende
sorteringsfunktion, og print så værdierne i arrayet ud.
glob() er i øvrigt en mere simpel måde at få en liste over filer, end
at skulle rode med filhandles. Så i en helt simpel udgave:
<?php
$files = glob('../../data/filer/*');
natcasesort($files);
print implode('<br>',$files);
?>
--
- Peter Brodersen
| |
Jesper Laursen (05-12-2004)
| Kommentar Fra : Jesper Laursen |
Dato : 05-12-04 11:54 |
|
On 05/12/04 11:18, Brian Emilius wrote:
> Men hvordan får jeg det til at sortere listen ASC eller DESC?
Du smider det hele ind i et array først - og derefter bruger du en af de
mange sort-funktioner php har.
Til sidst løber du så listen igennem igen, f.eks. med foreach(), for at
printe alle elementer ud.
--
Jesper Laursen
http://www.lauer.dk/
http://www.fairweb.dk/
| |
Brian Emilius (05-12-2004)
| Kommentar Fra : Brian Emilius |
Dato : 05-12-04 19:59 |
|
"Jesper Laursen" <lauer@php.net> skrev i en meddelelse
news:BDD8A73E.574D%lauer@php.net...
> Du smider det hele ind i et array først - og derefter bruger du en af de
> mange sort-funktioner php har.
>
> Til sidst løber du så listen igennem igen, f.eks. med foreach(), for at
> printe alle elementer ud.
Det har jeg nu gjort (brugte natcasesort()), men listen bliver ikke sorteret
korrekt - fx optræder der nogle filer, der starter med F, så kommer R og så
kommer F igen.
Hvordan kan det være?
Venlig hilsen
Brian Emilius
| |
Peter Brodersen (05-12-2004)
| Kommentar Fra : Peter Brodersen |
Dato : 05-12-04 21:11 |
|
On Sun, 5 Dec 2004 19:59:21 +0100, "Brian Emilius" <msn@emilius.dk>
wrote:
>Det har jeg nu gjort (brugte natcasesort()), men listen bliver ikke sorteret
>korrekt - fx optræder der nogle filer, der starter med F, så kommer R og så
>kommer F igen.
>Hvordan kan det være?
Ligger siden online, så man kan se den? Eller kan du klipkopiere
outputtet (fra HTML-kildeteksten) ind her?
Der er ikke en fil, der starter med mellemrum eller lignende?
--
- Peter Brodersen
| |
Brian Emilius (07-12-2004)
| Kommentar Fra : Brian Emilius |
Dato : 07-12-04 15:44 |
|
"Peter Brodersen" <usenet@ter.dk> skrev i en meddelelse
news:covq17$7at$1@katie.ellegaard.dk...
> Ligger siden online, så man kan se den? Eller kan du klipkopiere
> outputtet (fra HTML-kildeteksten) ind her?
Jeg har brugt natcasesort():
avlshanner.doc<br />
koebskontrakt.doc<br />
opdraet_annonce.doc<br />
parring_stamtavle_rekv.doc<br />
parringskontrakt.doc<br />
titeltagere.doc<br />
udenland_udstilling.doc<br />
aarets_kat.doc<br />
breedcouncils.doc<br />
FD_Disciplinarnavnet_2004.doc<br />
FD_Disciplinarnavnet_2004.pdf<br />
FIFe_FDAvlsogregistreringsregler_2004.doc<br />
regler.zip<br />
FU_REF_040511.pdf<br />
> Der er ikke en fil, der starter med mellemrum eller lignende?
Nix...
Venlig hilsen
Brian Emilius
| |
|
|