Code pour compter les fichiers d'un répertoire...
Paramètres:
$folder = repertoire de comptage
$ext = extension dont les fichiers sont comptés (peut être un tableau) (sans le . : jpg par exemple) (nombre de caractères variable, càd html aussi valable, mais gare à vous si vous utilisez des fichiers sans extension, vous voici prévenus, :D)
$subfolders = comptage dans les sous repertoires (true ou false) (1 ou 0 si vraiment vous le voulez, ^^ )
Retour:
Nombre de fichier
Source / Exemple :
function count_files($folder, $ext, $subfolders)
{
// on rajoute le / à la fin du nom du dossier s'il ne l'est pas
if(substr($folder, -1) != '/')
$folder .= '/';
// $ext est un tableau?
$array = false;
if(is_array($ext))
$array = true;
// ouverture du répertoire
$rep = @opendir($folder);
if(!$rep)
return -1;
$nb_files = 0;
// tant qu'il y a des fichiers
while($file = readdir($rep))
{
// répertoires . et ..
if($file == '.' || $file == '..')
continue;
// si c'est un répertoire et qu'on peut le lister
if(is_dir($folder . $file) && $subfolders)
// on appelle la fonction
$nb_files += count_files($folder . $file, $ext, 1);
// vérification de l'extension avec $array = 0
else if(!$array && substr($file, -strlen($ext)) == $ext)
$nb_files++;
// vérification de l'extension avec $array = true
else if($array && in_array(substr($file, strrpos($file, '.') + 1), $ext))
$nb_files++;
}
// fermeture du rep
closedir($rep);
return $nb_files;
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.