Jacob Atzen wrote:
> On 2005-05-31, Per Thomsen <pert@pert.dk> wrote:
>
>>Hvis du kun skal tælle filer, er det nok noget med:
>>if( $dirContent = glob('directory/*.*') ) {
>> $count = count($dirContent);
>>}
>
>
> Ovenstående virker ikke, hvis man har filer uden punktum - eller
> biblioteker med punktum. Bedre resultater kan opnås med is_file() og
> is_dir().
>
Det vidste jeg egentlig godt, det var derfor jeg skrev "nok noget med" :)
Men du har ret, det burde jeg self. have gjort opmærksom på, jeg kan da
i forsoning ;) føre dit forslag videre:
function countFiles($directory) {
$noOfFiles = 0;
if( $dh = opendir($directory) ) {
rewinddir($dh); //Sikkert ikke nødvendigt.
while( ($file = readdir($dh))!==FALSE ) {
if( !is_dir($directory.'/'.$file) ) {
$noOfFiles++;
}
}
closedir($dh);
} else {
trigger_error('Could not open directory in \'countFiles\'',
E_USER_ERROR);
}
return $noOfFiles;
}
Self. kunne man også kombinere glob() og scandir() med is_dir() og
is_file(), men jeg skulle mene at ovenstående funktion gør det, Niels
bad om: tæller filer, og ikke directories.
MVH Per Thomsen,
http://www.pert.dk/