有时候再面试的时候会出这个题目,下面封装了个function 希望对网友用的上。
<?php
function
my_scandir(
$dir
)
{
$files
=
array
();
if
(
$handle
= opendir(
$dir
) ) {
while
( (
$file
= readdir(
$handle
)) !== false )
{
if
(
$file
!=
".."
&&
$file
!=
"."
)
{
if
(
is_dir
(
$dir
.
"/"
.
$file
) )
{
$files
[
$file
] = my_scandir(
$dir
.
"/"
.
$file
);
}
else
{
$files
[] =
$file
;
}
}
}
closedir
(
$handle
);
return
$files
;
}
}
demo2:
function
my_scandir1(
$dir
)
{
$files
=
array
();
$dir_list
= scandir(
$dir
);
foreach
(
$dir_list
as
$file
)
{
if
(
$file
!=
".."
&&
$file
!=
"."
)
{
if
(
is_dir
(
$dir
.
"/"
.
$file
) )
{
$files
[
$file
] = my_scandir1(
$dir
.
"/"
.
$file
);
}
else
{
$files
[] =
$file
;
}
}
}
return
$files
;
}
$result
= my_scandir(
'./'
);
$result
= my_scandir1(
'./'
);
?>
<?php
set_time_limit(0);
function tree($directory)
{
$mydir=dir($directory);
echo "<ul> ";
while($file=$mydir->read()){
if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!=".."))
{
echo "<li><font color='#ff00cc'><b>$file</b></font></li> ";
tree("$directory/$file");
}
else
{
echo "<li>$file</li> ";
}
}
echo "</ul>
";
$mydir->close();
}
//start the program
echo "<h2>目录为粉红色</h2>
";
tree(".");
?>