Vous êtes ici Codes PHP et MySQL > Fichiers-Répertoires > Compter les fichiers d'un répertoire

 

Compter les fichiers d'un répertoire

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)
$subfolders = comptage dans les sous repertoires (1 ou 0)

Retour: Nombre de fichier
 
R@f
Site de l'auteur voir
[17] sources en PHP voir
Code vu 16960 fois
Enregistré le 01 Sept 2004
  • Digg ce code sur digg.com
  • Bookmark ce code sur del.icio.us
  • Bookmark ce code sur Google
  • Bookmark ce code sur Yahoo
  • Ajoute Compter les fichiers d'un répertoire
  • Partage ce code sur Facebook
 
 
 
 

Code Source


01.
02.
03.
04.
05.
06.
07.
08.
09.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
 
<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Compter les fichiers d'un répertoire                      */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts51-PHP.htm               */
/* Auteur         : R@f                                                       */
/* Date édition   : 01 Sept 2004                                              */
/* Website auteur : http://www.allpotes.ch                                    */
/*                                                                            */
/******************************************************************************/


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 0;
     if(is_array($ext))
        $array 1;

     // 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$ext1);
        // 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 = 1   
        else if($array==&& in_array(strtolower(substr(strrchr($file,"."),1)), $ext))
         $nb_files++;
     }
     
     // fermeture du rep
     closedir($rep);
     return $nb_files;
} 

?>


 

Fonctions du code

: Retourne un segment de chaîne - (PHP 4, PHP 5)
: Détermine si une variable est un tableau - (PHP 4, PHP 5)
: - (PHP 4, PHP 5)
: Lit une entrée du dossier - (PHP 4, PHP 5)
: Indique si le fichier est un dossier - (PHP 4, PHP 5)
: Calcule la taille d'une chaîne - (PHP 4, PHP 5)
: Indique si une valeur appartient à un tableau - (PHP 4, PHP 5)
: Trouve la dernière occurrence d'un caractère dans une chaîne - (PHP 4, PHP 5)
: Renvoie une chaîne en minuscules - (PHP 4, PHP 5)
: Ferme le pointeur sur le dossier - (PHP 4, PHP 5)
Commentaires
Le script est top et marche super avec paypal, une réussite trés pro, une vrai boutique avec design ... j'ai testé sur wamp2 avec un dyndns (sfrbox serveur maison) et paypal avec la sandbox (https//developer.paypal.com) pas de soucis ... à tester !
 
Statistiques
 
voilà le bon lien http://www.sphider.eu/ vers le site
 
Apres plusieurs essaie, pas trouver comment faire pour compter ts les fichiers sans se soucier de l'extesion, don j'ai modifier le code :

// si c'est un répertoire et qu'on peut le lister
if(is_dir($folder . $file) && $subfolders)
{
$nb_files += count_files($folder . $file, $ext, 1);// on appelle la fonction
}
elseif(!$array && substr($file, -strlen($ext))== $ext) // vérification de l'extension avec $array = 0
{
$nb_files++;
}
elseif($array==1 && in_array(strtolower(substr(strrchr($file,"."),1)), $ext)) // vérification de l'extension avec $array = 1
{
$nb_files++;
}
elseif ($ext == "*")
{
$nb_files++;
}


Exemple :
echo count_files($rep, "*", 0); // => * permet de compter ts les fichiers
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 

Connexion

 
 

Fichiers-Répertoires

 
 

PHP

 
 
        Publicité