Accueil > Forum > > > > Récuperer le poid d'un repertoire
Récuperer le poid d'un repertoire
dimanche 20 janvier 2008 à 19:35:11 |
Récuperer le poid d'un repertoire

setasan9
|
Bonsoir,
J'ai un petit soucis. Je doit récuperer la taille d'un répertoire pour limiter l'upload de fichier. Cependant, que ce soit avec ma fonction ou directement dans mon client ftp, on ne la voit pas.
Voici la fonction :
function DirSize($path , $recursive=TRUE){ $result = 0; if(!is_dir($path) || !is_readable($path)) { return 0; } else { $fd = dir($path); while($file = $fd->read()){ if(($file != "." ) && ($file != ".." )){ if(@is_dir("$path/$file/" )) { $result += $recursive?DirSize("$path/$file/" ):0; } else { $result += filesize("$path/$file" ); } } } $fd->close(); return $result; } }
Je récupere ensuite le résultat dans une variable : $taille_dossier_actuel = DirSize("../chemin/chemin/repertoire" );
Si vous pouviez m'éclaircir les idées.. oO Merci d'avance !
|
|
lundi 21 janvier 2008 à 07:58:27 |
Re : Récuperer le poid d'un repertoire

malik7934
|
Salut, J'ai déjà utilisé cette fonction exactement en l'état (je sais plus d'où elle sort) et elle fonctionne très bien... question à 2 balles: tu as fais un echo de ta variable $taille_dossier_actuel ? Sinon il se peut que ton path ne passe pas le premier test.
|
|
lundi 21 janvier 2008 à 11:44:01 |
Re : Récuperer le poid d'un repertoire

codefalse
|
A vue d'oeil, la fonction devrait marcher. As-tu testé si ton repertoire est accessible en lecture ?
|
|
lundi 21 janvier 2008 à 17:48:04 |
Re : Récuperer le poid d'un repertoire

setasan9
|
Bonjour et merci pour vos réponse
Oui j'utilise bien un écho pour récuperer la valeur. En faite le chiffre 0 est renvoyé, alors qu'il y a 6 mo dedant. Quand jouvre le ftp, j'ai constaté qu'il maffiche la taille des fichiers, mais pas des dossiers (ftp expert).
> As-tu testé si ton repertoire est accessible en lecture ? Il est en chmod 744 donc oui il est lisible, sauf si tu me parles d'autre chose?
|
|
lundi 21 janvier 2008 à 17:58:03 |
Re : Récuperer le poid d'un repertoire

codefalse
|
oui oui c'était bien ca ma question :)
Si tu essaye une fois sans répertoire, et ensuite avec répertoire (histoire de savoir d'ou viens l'erreur). Met juste un zip de 6 Mo dedans et tu verra.
Par contre je sais pas à combien tu veux limiter, mais fait le pas trop gros car le script risque de prendre du temps sinon pour en connaitre la taille ! :/
|
|
lundi 21 janvier 2008 à 18:22:31 |
Re : Récuperer le poid d'un repertoire

setasan9
|
C'est pareil, le resultat reste 0. Dans ftp expert quand je selectionne le dossier puis propriété il me dit 0 aussi (alors qu'il y a du contenu). Pour connaitre le poid du contenu il faut que j'entre dans le dossier et que je selectionne tous les fichier qui s'y trouvent. Voici un screen du ftp : http://www.servimg.com/image_preview.php?i=3&u=10059635 [ Lien ]
|
|
lundi 21 janvier 2008 à 20:33:19 |
Re : Récuperer le poid d'un repertoire

codefalse
|
C'est normal qu'il ne donne pas la taille des dossiers, tout simplement pour éviter d'aller récursivement dans les repertoires pour en évaluer la taille, car si ta beaucoup de données / répertoires, ca prendra trop de temps, ca va submerger le serveur, tout ca juste pour une info que la plupart des personnes ne font même pas attention.
C'est une sorte de respect envers le serveur :p
Apres pour ton script j'ai du mal à comprendre, il devrait marcher normallement ?!
C'est quel environnement ? Linux ou Windows ? (le serveur)
|
|
lundi 21 janvier 2008 à 20:37:22 |
Re : Récuperer le poid d'un repertoire

setasan9
|
Le script marche puisque j'ai un retour, qui est 0. (ou marche a moitier je nsai pas) J'utilise un serveur Linux. [ Lien ]
|
|
lundi 21 janvier 2008 à 21:35:25 |
Re : Récuperer le poid d'un repertoire

codefalse
|
function DirSize($path , $recursive=TRUE){ $result = 0; if(!is_dir($path) || !is_readable($path)) { echo "Ce n'est pas un repertoire valide !
<br/>";
return 0; } else { $fd = dir($path); echo $path." est un répertoire<br/>"; while($file = $fd->read()){ if(($file != "." ) && ($file != ".." )){ if(@is_dir("$path/$file/" )) { echo
$path."/".$file."/ est un répertoire !<br />"; echo $recursive ? "Mode recursif On" : "Mode récursif Off"; echo "<br />";
$result += $recursive?DirSize("$path/$file/" ):0; } else { echo "C'est un fichier, ca taille est de :"; echo
filesize("$path/$file" ); echo "<br />";
$result += filesize("$path/$file" ); } } } $fd->close(); return $result; } }
Remplace ton code par celui-ci, et montre moi ce qu'il affiche ! :p
|
|
lundi 21 janvier 2008 à 23:20:30 |
Re : Récuperer le poid d'un repertoire

setasan9
|
"Ce n'est pas un repertoire valide ! "
En quoi il ne serait pas valide ? [ Lien ]
|
|
Cette discussion est classée dans : file, récuperer, repertoire, path, result
Répondre à ce message
Sujets en rapport avec ce message
Pb chemin de longueur superieure à 255 caractères [ par kohntark ]
Salut, Je souhaite lister un répertoire (ou une unité) afin d'appliquer un traitement à certains types de fichiers. Le script s'execute en CLI sous w
Probleme avec is_dir() et is_file [ par zhaar ]
Bonjour,J'ai un repertoire avec quelques images en .jpg et des sous répertoires.Pour détecter un sous répertoire, j'utilise un is_dir() dans ma boucle
Ordre de listage d'un répertoire [ par Evangun ]
Bonsoir! j'ai trouvé la fonction suivante qui liste le contenu d'un répertoire et des sous-répertoires. Elle marche parfaitement sous easyPHP mais le
modifier un code sur une gallerie [ par mike501 ]
bonjour, je vien de trouver une galerie a mon gout mais le souci c est que les image ce mette toute sur la meme page estce que quelq un pourrai m aide
je suis desesperer [ par mike501 ]
bonjour, je voudrai savoir si quelq'un pourrai m aider, j ai une gallerie d image mais le souci ces que toute les image sont sur la meme page, je voud
creer un compteur [ par mike501 ]
bonjour, je vien de trouver une galerie a mon gout mais le souci c est que les image ce mette toute sur la meme page estce que quelq un pourrai m aide
creer un compteur sur gallerie [ par mike501 ]
bonjour, je vien de trouver une galerie a mon gout mais le souci c est que les image ce mette toute sur la meme page estce que quelq un pourrai m aide
creer un compteur [ par mike501 ]
bonjour, je vien de trouver une galerie a mon gout mais le souci c est que les image ce mette toute sur la meme page estce que quelq un pourrai m aide
Compresser un dossier avec ces sous dossiers [ par Fran6web ]
Bonjour, j'ai trouvé sur le site un script vraiment pas mal permettant de faire un backup de certains dossiers du serveur dans un fichier ZIP ( http:/
Lister des fichiers [ par clive2k1 ]
Salut! voilà j'ai choper qqpart un script qui permet de lister tout les fichiers d'un repertoire: $repertoire = '**nom/dossier**'; $dir = opendir($r
Livres en rapport
|
Derniers Blogs
UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
HTML VERS PDFHTML VERS PDF par spike911
Cliquez pour lire la suite par spike911
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|