note 59215 added to function.readdir

From: Date: Tue, 29 Nov 2005 18:18:09 +0000
Subject: note 59215 added to function.readdir
Groups: php.notes 
Request: Send a blank email to php-notes+get-99311@lists.php.net to get a copy of this message
This is a function to read all the directories and subdirectories of a folder. It returns an array with all the paths. <?PHP $root = "root"; function arborescence($root) { $folders = array(); $path = "$root"; $i = 0; // Vérification de l'ouverture du dossier if ($handle = opendir("./".$path)) { // Lecture du dossier while ( false !== ($file = readdir($handle)) ) { if (filetype($path."/".$file) == 'dir') { if ($file != '..' && $file != '.' && $file != '' && (substr($file,0,1) != '.')) { $folders[$i] = "./".$path."/".$file; $i++; } } } closedir($handle); // Recherche de tous les sous dossiers pour chaque dossiers for ( $u = 0; $u < $i; $u++ ) { if ($handle = opendir($folders[$u])) { // Lecture du dossier while ( false !== ($file = readdir($handle)) ) { if (filetype("./".$folders[$u]."/".$file) == 'dir') { if ($file != '..' && $file != '.' && $file != '' && (substr($file,0,1) != '.')) { $folders[$i] = $folders[$u]."/".$file; $i++; } } } closedir($handle); } } } return $folders; } ?> ---- Manual Page -- http://www.php.net/manual/en/function.readdir.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+59215 Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=added+to+the+manual Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=bad+code Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=spam Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=useless Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=non-english Delete: already in docs -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes&reason=already+in+docs Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+59215&report=yes Reject -- http://master.php.net/manage/user-notes.php?action=reject+59215&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#99311) next »