Accueil > > > CRÉATION D'UNE ARBORESCENCE
CRÉATION D'UNE ARBORESCENCE
Information sur la source
Description
Cette fonction permet de lister les fichiers et dossiers contenu dans un dossier et même de lister les sous-dossiers. En gros il fait toute l'arborescence à partir d'un dossier. Tout cela par récursivité. J'ai mis un filtre pour ne pas lister certains dossier ou fichier et un autre pour ne pas lister certaines extensions
Source
- <?php
-
- function ListFolder($Folder, $SkipFileExts, $SkipObjects) // Fonction pour lister les dossier
- {
- $dir = opendir($Folder);
- while (false !== ($Current = readdir($dir))) // Boucle sur tout ce qu'il y a dans le répertoire
- {
- if ($Current !='.' && $Current != '..' && in_array($Current, $SkipObjects)===false)
- {
- if(is_dir($Folder.'/'.$Current)) // Si c'est un dossier
- {
- echo '<strong style="color: #ff0000;">'.$Current.'</strong><br>';
- ListFolder($Folder.'/'.$Current, $SkipFileExts, $SkipObjects); // On liste les dossiers contenue dans le dossier (récursivité)
- }
- else
- {
- $FileExt = strtolower(substr(strrchr($Current ,'.'),1));
- if (in_array($FileExt, $SkipFileExts)===false) // On regarde si on dois afficher cette extension
- echo $Current.'<br>';
- }
- }
- }
- closedir($dir);
- }
-
- ?>
-
- <html>
- <head>
- <title>Test listage de fichier et dossier par récursivité</title>
- </head>
- <body>
-
- <?php
- $Folder = './';
- $SkipExts = array('txt', 'php', 'db');
- $SkipObjects = array('UnDossier', 'UnFichier');
- ListFolder($Folder, $SkipExts, $SkipObjects);
- ?>
-
- </body>
- </html>
<?php
function ListFolder($Folder, $SkipFileExts, $SkipObjects) // Fonction pour lister les dossier
{
$dir = opendir($Folder);
while (false !== ($Current = readdir($dir))) // Boucle sur tout ce qu'il y a dans le répertoire
{
if ($Current !='.' && $Current != '..' && in_array($Current, $SkipObjects)===false)
{
if(is_dir($Folder.'/'.$Current)) // Si c'est un dossier
{
echo '<strong style="color: #ff0000;">'.$Current.'</strong><br>';
ListFolder($Folder.'/'.$Current, $SkipFileExts, $SkipObjects); // On liste les dossiers contenue dans le dossier (récursivité)
}
else
{
$FileExt = strtolower(substr(strrchr($Current ,'.'),1));
if (in_array($FileExt, $SkipFileExts)===false) // On regarde si on dois afficher cette extension
echo $Current.'<br>';
}
}
}
closedir($dir);
}
?>
<html>
<head>
<title>Test listage de fichier et dossier par récursivité</title>
</head>
<body>
<?php
$Folder = './';
$SkipExts = array('txt', 'php', 'db');
$SkipObjects = array('UnDossier', 'UnFichier');
ListFolder($Folder, $SkipExts, $SkipObjects);
?>
</body>
</html>
Conclusion
Pour le listage, je n’ai pas fait de mise en forme. Y'a juste les dossiers en gras et en rouge, les fichiers en noir. C'est juste pour l'example. Ce sont mes débuts en PHP, donc n'hésiter pas à m'encourager ou à me critiquer. Le but étant de progresser.
Historique
- 07 février 2006 16:19:21 :
- Application de la bonne méthode pour énumérer les dossiers
- 07 février 2006 17:00:06 :
- Simplification et correction
- 08 février 2006 15:00:22 :
- Ajout d'un filtre de listage
- 08 février 2006 16:29:06 :
- Correction de 2,3 trucs
- 14 février 2006 00:24:58 :
- Encore des corrections
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Mettre en ligne une arborescence de dossiers et de fichiers [ par hkpsyco974 ]
Bonjour tout le monde, je ne sais pas si mon post est bien placé, désolé si ce n'est pas le cas...Mon problème :L'endroit ou je travaille est un cabin
CHMOD [ par flaydeer ]
Salut, Un peu de mal a suivre sur le chmod, que faut il mettre alors concrètement sur les droits des dossiers et fichiers. Par exempl: j'ai un doss
afficher une liste de dossiers et de fichiers sous forme d'arborescence en php [ par boubou2412 ]
Bonjour,j'ai un petit probléme concernat l'affichage dans ma page web et j'aimerais bien que vous m'aidez.Bref le probléme quej'ai plusieurs volet et
Lecture d'un nom de fichier...2 [ par magicsmacks ]
Bonjour, J'avais demandais il y a qq jours ceci : " Bonjour, Je possède un dossier sur mon serveur dans lequel
lister dossiers uniquements [ par shadow1779 ]
Bonjour,il existe dans les codes de nombreux scripts pour lister le contenu d'un dossier, cependant cela liste les fichiers et dossier contenu, je vou
Lister tous les fichiers d'un dossier donné [ par lnp ]
Comment faire pour lister tous les fichiers d'un dossier donné En vue de supprimer les fichiers qui ne sont plus nécessaire au fonctionneme
Lister les fichiers d u ndossier [ par Ze_doctor ]
Salut tout le monde, J ai regardé apres une source en php pour ca mais aucune ne fonctionne chez moi :/ j ai reussi en rassembalnt quelques bou
Sécurité-fichiers-dossiers [ par stageSAP ]
Bonjour,Pour mon site, je protège l'accès aux pages grâce aux variables de sessions et cela marche très bien. Je travaille en local pour l'instant. Su
Tri de fichiers par date [ par Clem ]
Comment trier dans l'orde du plus nouveau au plus vieux, des dossiers ?J'ai trouvé pour afficher les dossiers :<?$rep=opendir('.');while ($file = r
Lister les fichiers, sur plusieurs pages [ par jeremytheboss ]
Bonjour,Connaissez-vous le code à mettre pour lister le contenu d'un dossier sur plusieurs pages (dixfichiers par pages)Merci de votre réponse, Jérémy
|
Derniers Blogs
[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE[RIA SERVICES] INCLUDE ET DOMAINDATASOURCE par Audrey
Dans un de mes articles précédents , j'avais parlé des DomainDataSource avec RIA Services dans le cas d'une interface Maître - Détail. Dans le même principe, je vais parler d'une autre manière de mettre en forme ce cas d'interface avec RIA Services. Et po...
Cliquez pour lire la suite de l'article par Audrey ZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATIONZUNE : VERSION ZUNE SOFTWARE V 4.2 ET LA SOCIALISATION par ROMELARD Fabrice
Une des nouveautés de la version V 3.0 était l'apparition de l'onglet Social qui ne fonctionnait que si le MarketPlace était activé sur son poste. Cela limitait donc son intérêt, car hors du cadre commercial USA-CANADA, peu de monde trouva...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice PRATIQUE DE SILVERLIGHT PAR ERIC AMBROSIPRATIQUE DE SILVERLIGHT PAR ERIC AMBROSI par MPOWARE
Je viens de finir la lecture du dernier livre d'
Eric Ambrosi
éditions PEARSON
Son livre donne une approche pratique de Silverlight qui sera aussi bien comprise par le développeur que par le designeur.
Tous les aspects du développement RIA sont abor...
Cliquez pour lire la suite de l'article par MPOWARE APPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NETAPPRENDRE à DéVELOPPER POUR LES MOBILES AVEC LA NOUVELLE GéNéRATION .NET par odewit
2 déclinaisons de Silverlight et 2 déclinaisons de Mono permettent dorénavant (ou permettront prochainement) de développer des applications .NET mobiles pour les principales plates-formes du marché :
Silverlight pour Symbian, basé sur Silverlight 2...
Cliquez pour lire la suite de l'article par odewit ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|