标签:
为了便于操作,先将php读取目录及子目录下所有文件名的方法封装成一个类。
// +----------------------------------------------------------------------
// | lidequan [ I CAN DO IT JUST WORK HARD ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016 http://www.findme.wang All rights reserved.
// +----------------------------------------------------------------------
// | Author: lidequan <dequanLi_edu@126.com>
// +----------------------------------------------------------------------
class File{
/**
*获取某个目录下所有文件
*@param $path文件路径
*@param $child 是否包含对应的目录
*/
public function getFiles($path,$child=false){
$files=array();
if(!$child){
$dp = dir($path);
while ($file = $dp ->read()){
if($file !="." && $file !=".." && is_file($path.$file)){
$files[] = $file;
}
}
$dp->close();
}else{
$this->scanfiles($files,$path);
}
return $files;
}
/**
*@param $files 结果
*@param $path 路径
*@param $childDir 子目录名称
*/
public function scanfiles(&$files,$path,$childDir=false){
$dp = dir($path);
while ($file = $dp ->read()){
if($file !="." && $file !=".."){
if(is_file($path.$file)){//当前为文件
if($childDir){
$files[$childDir][]= $file;
}else{
$files[]= $file;
}
}else{//当前为目录
$this->scanfiles($files,$path.$file.DIRECTORY_SEPARATOR,$file);
}
}
}
$dp->close();
}
}
读取Manual/html目录及子目录下所有文件名
$File=new File();
$info=$File->getFiles(‘Manual/html/‘,true);
读取Manual/html目录下所有文件名
$File=new File();
$info=$File->getFiles(‘Manual/html/‘);
也可以用php中glob与scandir,当时其有一定的限制。
标签:
原文地址:http://blog.csdn.net/hsd2012/article/details/52185177