Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1509 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Compter des fichiers

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Compter des fichiers

n°1496744
ginie
Posté le 28-12-2006 à 17:55:43  profilanswer
 

:hello:  
 
je chercher à compter des fichier qui sont dans plusieurs dossiers.
 
Pour compter des fichiers dans un dossier ça va, mais plusieurs et dont le nombre peut varier ?
 
pour un y'a ça qui marche :

<?php
$files = glob("dossier/*" );
$compteur = count($files);
echo $compteur;
?>


 
 
merci

mood
Publicité
Posté le 28-12-2006 à 17:55:43  profilanswer
 

n°1496749
afbilou
pouet your life
Posté le 28-12-2006 à 18:06:22  profilanswer
 

Il te faut un algorithme récursif qui va parcourir l'ensemble de l'arborescence. Un exemple :

Code :
  1. function scan($path)
  2. {
  3. $resultat = 0;
  4. $res = glob($path.'/*' , GLOB_NOSORT);
  5. foreach($res as $file)
  6. {
  7. if (is_dir($file) && $file!='.' && $file!='..')
  8. {
  9. $resultat += scan($path.'/'.$file);
  10. }
  11. else
  12. {
  13. $resultat++;
  14. }
  15. }
  16. return($resultat);
  17. }


Code :
  1. $nombre_de_fichier = scan('/toto'); // pour compter le nombre de fichier présents dans /toto et les eventuels sous dossiers qu'il pourrait contenir


Il y a surement des erreurs car je n'ai pas testé et j'ai lancé ca vite fait mais l'idée est la.


Message édité par afbilou le 28-12-2006 à 18:13:34
n°1496750
ginie
Posté le 28-12-2006 à 18:11:26  profilanswer
 

l'arbo est comme ça :
 
 


[rep]
|
|=>[1]--a/b/c/d
|
|=>[2]--a/b/c/d
|
|=>[3] ...
 


 
je cherche à compter la totalité des fichier a/b/c/d qui peuvent être dans les sous rep de [rep]

n°1496751
afbilou
pouet your life
Posté le 28-12-2006 à 18:15:06  profilanswer
 

Oui j'ai bien compris :s

n°1496754
ginie
Posté le 28-12-2006 à 18:19:53  profilanswer
 

ton

$nombre_de_fichier = scan('/toto');

il sert à quoi ici ?

n°1496756
afbilou
pouet your life
Posté le 28-12-2006 à 18:22:07  profilanswer
 

Y a kand meme un commentaire a cote de cette ligne pour expliquer !
 
Ca renvoie dans $nombre_de_fichier le nombre de fichiers contenus dans le repertoire /toto et les eventuels sous repertoire que /toto pourrait contenir !

n°1496757
ginie
Posté le 28-12-2006 à 18:23:19  profilanswer
 

parce que je l'ai foutu dans un dossier avec 17 fichier et ça me donne 0 :o
 
et je ne vois pas le lien entre les 2 codes que tu donnes

Message cité 1 fois
Message édité par ginie le 28-12-2006 à 18:23:56
n°1496759
afbilou
pouet your life
Posté le 28-12-2006 à 18:27:14  profilanswer
 

Entre temps j'ai peut-etre modifié la fonction scan.
Sinon tu essaies de comprendre comment ca marche histoire de debugger ou tu n'y connais rien et tu attends sagement qu'on te donne tout ?

n°1496760
ginie
Posté le 28-12-2006 à 18:28:32  profilanswer
 

bien sûr que j'essaye de comprendre
et j'ai aussi vu que tu avais fait une modif dans le code

n°1496763
afbilou
pouet your life
Posté le 28-12-2006 à 18:33:04  profilanswer
 

ginie a écrit :

parce que je l'ai foutu dans un dossier avec 17 fichier et ça me donne 0 :o
 
et je ne vois pas le lien entre les 2 codes que tu donnes


Bah le lien c'est ke la premiere partie represente la definition d'une fonction que j'ai appellé scan.
La deuxieme partie j'appelle la fonction avec comme argument pour la recherche la chaine '/toto' pour que la fonction scan s'execute avec /toto comme point de depart.

mood
Publicité
Posté le 28-12-2006 à 18:33:04  profilanswer
 

n°1496765
ginie
Posté le 28-12-2006 à 18:36:52  profilanswer
 

je peux mettre tout ce que je veux à scan(''), ça sort toujours 0

n°1496770
afbilou
pouet your life
Posté le 28-12-2006 à 18:42:39  profilanswer
 

montre le code a tout hasard.
pour debugger n'hesite pas a mettre des echo un partout dans la fonction scan pour voir si la fonction parcourt les dossiers recursivement, quels fichiers elle rencontre, combien de fois la fonction est appellée, connaitre la valeur de certaines variable comme $resultat et $res.
 
Voila n'ayant pas de quoi tester sur place je ne peux pas te proposer plus comme aide.

n°1496777
ginie
Posté le 28-12-2006 à 18:57:51  profilanswer
 

un echo de $res me donne "array"


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Compter des fichiers

 

Sujets relatifs
[PHP/MySQL] Je sers la Science (moteur cataloguage recherche pdf)Recherche programmeur PHP
Comment proteger mes sources PHP ?Chroot virtuel en PHP
[ASP.NET] ASP.NET ou PHP ?comment tricher dans un FORM grace au PHP ??? envoi d'une valeur ?
[PHP] nombre d'octets de fichier ouvert avec file_get_contents[PHP] Fonction Mail() ???
SQL Server ou Fichiers ?Shared_Passive et chemin d'acces aux fichiers associés aux variables
Plus de sujets relatifs à : [PHP] Compter des fichiers


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR