建站软件 优化软件 编程软件 网页辅助 站群程序 网站程序 图像处理 资源教程 字体下载 推荐软件


您的位置:首页 > PHP学习 > 怎么用php遍历当前文件夹下面的所有文件

怎么用php遍历当前文件夹下面的所有文件

时间:2015-01-29 15:15:24  来源:免费模板网 作者:风雪 阅读次数 tags文件夹面的文件

有时候再面试的时候会出这个题目,下面封装了个function 希望对网友用的上。
<?php /**
* 遍历目录,结果存入数组。支持php4及以上。php5以后可用scandir()函数代替while循环。
* @param string $dir
* @return array
*/ 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(".");
?>


 

本文地址:https://www.freemoban.com/php/2015/0129/332.html

猜你喜欢
栏目推荐
模板推荐

Copyright:www.freemoban.com 免费模板网 All Rights Reserved 网站备案:辽ICP备19014872号-2   辽公网安备 21010602000376号  辽公网安备:42900402000182号

免责声明:本站部分资源来自互联网收集,版权归原创者所有,如果侵犯了你的权益,我们会及时删除侵权内容,联系QQ:1615187561 谢谢合作!