>  기사  >  php教程  >  php 读目录以列表形式展示实例

php 读目录以列表形式展示实例

WBOY
WBOY원래의
2016-06-08 17:24:012286검색

本文章来给大家介绍利用php 读目录以列表形式展示,读取目录我们会使用到scandir,opendir,foreach,sizeof这几个常用的函数,下面我们直接看实例。

<script>ec(2);</script>

例1

 代码如下 复制代码

 
$getUrl = (empty($_GET['url'])) ? './' : $_GET['url'].'/';
 
function fileName($dir)
{
 
    $fileAll = scandir($dir,0);
    $pathDir = $pathFile = array();
    $count = count($fileAll);
 
    if($count         echo "空目录
";
    }
     
    foreach($fileAll as $pdf){
        if(is_dir($dir.$pdf)){
            $pathDir[] = $pdf;
        }else{
            $pathFile[] = $pdf;
        }
    }
 
    foreach($pathDir as $pd){
        if($pd == '.' or $pd == '..') continue;
        echo "$pd
";
    }
 
    foreach($pathFile as $pf){
        echo "$pf
";
    }
 
    if($dir != './'){
        $dir = rtrim($dir,'/'); 
        $dir = explode('/',$dir);
        unset($dir[sizeof($dir)-1]);
        $dir = implode('/',$dir);
        echo "Go Back";
    }
 
}
 
fileName($getUrl);

例2

 代码如下 复制代码

/**
 * Goofy 2011-11-30
 * getDir()去文件夹列表,getFile()去对应文件夹下面的文件列表,二者的区别在于判断有没有“.”后缀的文件,其他都一样
 */

//获取文件目录列表,该方法返回数组
function getDir($dir) {
 $dirArray[]=NULL;
 if (false != ($handle = opendir ( $dir ))) {
  $i=0;
  while ( false !== ($file = readdir ( $handle )) ) {
   //去掉"“.”、“..”以及带“.xxx”后缀的文件
   if ($file != "." && $file != ".."&&!strpos($file,".")) {
    $dirArray[$i]=$file;
    $i++;
   }
  }
  //关闭句柄
  closedir ( $handle );
 }
 return $dirArray;
}

//获取文件列表
function getFile($dir) {
 $fileArray[]=NULL;
 if (false != ($handle = opendir ( $dir ))) {
  $i=0;
  while ( false !== ($file = readdir ( $handle )) ) {
   //去掉"“.”、“..”以及带“.xxx”后缀的文件
   if ($file != "." && $file != ".."&&strpos($file,".")) {
    $fileArray[$i]="./imageroot/current/".$file;
    if($i==100){
     break;
    }
    $i++;
   }
  }
  //关闭句柄
  closedir ( $handle );
 }
 return $fileArray;
}

//调用方法getDir("./dir")……可以是绝对路径也可以是相对路径
?>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.