本节内容:
php 遍历指定路径下所有目录与文件的自定义函数。
基于php5 实现,两种方法:scandir和DirectoryIterator。
方法1,scandir函数:
复制代码 代码示例:
/**
* php 遍历目录与文件
* by www.jbxue.com
*/
function scan_all($dir){
$temp = scandir($dir);
if(is_array($temp) && count($temp)>2){
array_shift($temp);
array_shift($temp);
foreach($temp as $v){
$cur_dir=$dir.DIRECTORY_SEPARATOR.$v;
if(is_dir($cur_dir)){
echo $v." =>";
echo "
";";scan_all($cur_dir);
echo "
}else if(is_file($cur_dir)){
echo "FILE:".$v."
";
}else{
echo 'err';
}
}
}
}
$dir = "D:/yourdir/";
scan_all($dir);
方法2,DirectoryIterator:
复制代码 代码示例:
/**
* php 遍历目录与文件
* by www.jbxue.com
*/
function directoryiterator($path)
{
$iterator = new DirectoryIterator($path);
foreach ($iterator as $fileinfo) {
if(!$fileinfo->isDot())
{
if($fileinfo->isDir())
{
echo $fileinfo.'=>
';';directoryiterator($path.DIRECTORY_SEPARATOR.$fileinfo);
echo '
}
else
{
echo $fileinfo->getFilename().'
';
}
}
}
}
$dir = "D:/yourdir/";
directoryiterator($dir);