php中遍历目录下文件函数有不少,下面本文章就来介绍dir(),readdir()函数遍历目录的例子,希望这些例子能给各位朋友带来帮助哦.
方法一:使用dir()遍历目录
dir()函数,成功时返回Directory类实例.
PHP dir() 语法格式为:
dir(directory);//directory为需要显示文件名的目录名称,可包含路径信息
PHP dir() 用法举例:列出upload目录下的所有文件名,代码如下:
- <?php
 - $dir = @ dir("upload");//打开upload目录;“@”可屏蔽错误信息,因有时候需要显示文件的目录内并没有文件,此时可能会报出错误,用“@”隐藏掉错误
 - //列举upload目录中的所有文件
 - while (($file = $dir->read()) !== false)
 - {
 - echo "文件名: " . $file . "<br />";
 - }
 - $dir->close();
 - ?>
 - //输出结果为:
 - 文件名: .
 - 文件名: ..
 - 文件名: logo.gif
 - 文件名: arrow.gif
 - 文件名: bg.gif
 
例子代码如下:
- function tree($dir)
 - {
 - $mydir = dir($dir);
 - while($file = $mydir->read())
 - {
 - if($file != '.' && $file != '..')
 - {
 - if(is_dir("$dir/$file"))
 - {
 - echo '目录名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />'; //开源软件:Vevb.com
 - tree("$dir/$file");
 - }else{
 - echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />';
 - }
 - }
 - }
 - $mydir->close();
 - }
 - tree('./phpmyadmin');
 
方法二 使用readir()遍历目录
定义和用法:readdir() 函数返回由 opendir() 打开的目录句柄中的条目,若成功,则该函数返回一个文件名,否则返回 false.
语法:readdir(dir_stream)
例子,代码如下:
- header('content-type:text/html;charset=utf-8');
 - function listDir($dir)
 - {
 - if(is_dir($dir))
 - {
 - if($handle = opendir($dir))
 - {
 - while($file = readdir($handle))
 - {
 - if($file != '.' && $file != '..')
 - {
 - if(is_dir($dir.DIRECTORY_SEPARATOR.$file))
 - {
 - echo '目录名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />';
 - listDir($dir.DIRECTORY_SEPARATOR.$file);
 - }else{
 - echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />';
 - }
 - }
 - }
 - }
 - closedir($handle);
 - }else{
 - echo '非有效目录!';
 - }
 - }
 - listDir('./phpmyadmin');
 
新闻热点
疑难解答