note 45928 added to function.opendir
| From: | brjpeter at iupui dot edu | Date: | Thu, 23 Sep 2004 19:29:46 +0000 |
| Subject: | note 45928 added to function.opendir | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-77261@lists.php.net to get a copy of this message | ||
Here is a nice function to return a list of every file (recursively) in a directory.
<?php
function listfiles($dir)
{
$i = -1;
if(is_dir($dir))
{
$dl = opendir($dir);
if($dl)
{
while($file = readdir($dl))
{
$list = $dir . "/" . $file;
if(is_dir($list))
{
if($file != "." && $file !=
"..")
{
$i++;
$arr = listfiles($list);
for($j = 0; $j < sizeof($arr); $j++)
{
$array[$i + $j] = $arr[$j];
}
$i += sizeof($arr) - 1;
}
}
else
{
$i++;
$array[$i] = $dir . "/". $file;
}
}
}
closedir($dl);
}
return $array;
}
?>
Hope it helps anyone looking for that type of function. It seems fast enough.
----
Manual Page -- http://www.php.net/manual/en/function.opendir.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+45928
Delete -- http://master.php.net/manage/user-notes.php?action=delete+45928&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+45928&report=yes
Search -- http://master.php.net/manage/user-notes.php