Accueil > > > SURCHARGE DE LA CLASSE RECURSIVEDIRECTORYITERATOR POUR RÉCUPÉRÉ UNE LISTE DE FICHIERS
SURCHARGE DE LA CLASSE RECURSIVEDIRECTORYITERATOR POUR RÉCUPÉRÉ UNE LISTE DE FICHIERS
Information sur la source
Description
Ce petit code source et une surcharge de RecursiveDirectoryIterator qui permet d'utiliser une méthode getFile pour récupérer tous les fichiers / dossiers récursivement.
Fonctionnement :
$Dir = new ExtendRecursiveDirectoryIterator("glob://P:/www/*" );
$array = $Dir -> getFiles();
Source
- class ExtendRecursiveDirectoryIterator extends RecursiveDirectoryIterator
- {
- public function getFiles($match = '#.*#i', $onlyDir = false, $recursive = true, $depth = -1)
- {
- //static $Files = array();
- $Files = array();
- foreach($this as $file)
- {
- // Windows' Dir Fix //
- $fileName = str_replace('\\', '/', $file -> getPathName());
-
- if($file -> isDir() && ($depth != 0))
- {
- // Windows' Dir Fix //
- if(preg_match($match, $fileName))$Files[] = $fileName.'/';
- if($recursive)$Files = array_merge($this -> getChildren() -> getFiles($match, $onlyDir, $recursive, $depth), $Files);
- }elseif(!$file -> isDir() && !$onlyDir && preg_match($match, $fileName)){
- $Files[] = $fileName;
- }
- }
- return $Files;
- }
- }
class ExtendRecursiveDirectoryIterator extends RecursiveDirectoryIterator
{
public function getFiles($match = '#.*#i', $onlyDir = false, $recursive = true, $depth = -1)
{
//static $Files = array();
$Files = array();
foreach($this as $file)
{
// Windows' Dir Fix //
$fileName = str_replace('\\', '/', $file -> getPathName());
if($file -> isDir() && ($depth != 0))
{
// Windows' Dir Fix //
if(preg_match($match, $fileName))$Files[] = $fileName.'/';
if($recursive)$Files = array_merge($this -> getChildren() -> getFiles($match, $onlyDir, $recursive, $depth), $Files);
}elseif(!$file -> isDir() && !$onlyDir && preg_match($match, $fileName)){
$Files[] = $fileName;
}
}
return $Files;
}
}
Conclusion
paramètres :
string $match : recherche avec preg_match
bool $onlyDir : Récupère uniquement les dossiers
bool $recursive : recherche dans les sous dossiers
int $depth : profondeur de la recherche dans les dossiers
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
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
Recherche d'une chaine de caractère dans un fichiers et affichage du paragraphe contenant la chaine? [ par dolu007 ]
j'ai besoin de programmer un logiciel qui va me permettre de rechercher un mot ou une chaine de caractèredans un fichier lui meme contenu dans un répe
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
Proteger des fichiers sur un site ..recherche d'un specialiste PHP [ par denisnospam ]
Bonjour,Je cherche avant tout un specialiste PHP a qui je pourrais poser des questions de temps en temps hors forum pour ne pas polluer le thread .Ens
recherche par mot dans fichier [ par justone72 ]
Bonjour,J'ai besoin assez rapidemnt d'un script qui permet de faire une recherche dans un dossier (recherche de fichiers dans le dossier + sous dossie
lister fichiers et sous-dossiers [ par Totofweb ]
Bonjourdans un script, j'ai besoin de lister les fichiers d'un dossier et les fichiers des sous-dossiers (niveau 1 seulement, mais si vous avez une so
effacer tous les fichiers et dossiers a la racine d un site [ par Teclis01 ]
Je crois que tout est dans le titre.Je suis decu de free je ne peux plus acceder a mon ftp je peux seulement acceder a mon site en passant par un navi
Recherche de fichiers dans plusieur repertoire [ par VANLOC ]
Bonjour, J'utilise la fonction ci apres qui me cherche un fichier avec une extension (jpg ici) dans un seul dossier ou j'ai toutes mes images. Ma que
Recherche script [ par jipe32 ]
Bonjour je voudrais savoir comment creer un espace membre pour envoyer des fichiers sur nos serveurs:l'internaute passe sur mon site, s'inscrit et peu
Moteur de recherche sur des fichiers [ par airben ]
Bonjour Quelqu'un peut'il m'aider s'il vous plait . Etant debutant , est il possible de crée un moteur de recherche sur des fichiers avec comme
|
Derniers Blogs
[WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : SONDAGE..RE : SONDAGE.. par phpAnonyme
Cliquez pour lire la suite par phpAnonyme RE : SONDAGE..RE : SONDAGE.. par TychoBrahe
Cliquez pour lire la suite par TychoBrahe
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|