LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1868|回复: 3

PHP遍历目录函数,出问题了,期待高手解释

[复制链接]
发表于 2009-4-18 19:59:58 | 显示全部楼层 |阅读模式
function view_dir($directory,$i) //返回路径下的文件名,遍历子目录名.加路径
{
   
        $handle = opendir( $directory );                     //打开目录
    while ( $file = readdir($handle) )                     //如果READDIR函数读到文件或目录则执行while
    {
        $bdir = $directory . '/' .$file;                      //定义目录下的文件名
        if ($file <> '.' && $file <> '..' && is_dir($bdir))      //如果不是.和 ..并且$bdir是个目录
        {
            view_dir( $directory .'/'. $file,$i);                //再次调用view_dir方法
        }
        else if( $file <> '.' && $file <> '..')             //否则输出文件名并换行
        {
            $file_name[$i]=$directory .'/'. $file;
                        echo $directory .'/'. $file." ".$i."<br>";
                        $i++;
        }
    }
    closedir( $handle );                                  //关闭目录
       
        return $file_name;
}
 楼主| 发表于 2009-4-18 20:03:33 | 显示全部楼层
函数目的是把 文件名返回到数组

不想用全局变量,因此在函数自己调用函数自己时,多传了个变量$i

第一次调用函数时$i=0 后面递增,可是结果$i值有重复,(有子目录时)

如何改,谢谢
回复 支持 反对

使用道具 举报

发表于 2009-5-3 16:38:06 | 显示全部楼层
可以引用传递变量i
function view_dir($directory,&$i)
回复 支持 反对

使用道具 举报

发表于 2009-5-12 10:03:40 | 显示全部楼层
我不懂,我是来学习的,呵呵
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表