欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php列出指定目录所有子文件夹与文件实例

程序员文章站 2024-01-09 10:44:10
...
php教程列出指定目录所有子文件夹与文件实例
function listDirFiles()
{
// 设置目录
$dirs = './';

// 申明文件夹数组与文件数组
$aFolders = array() ;
$aFiles = array() ;

$ocfolder = opendir( $dirs ) ;//则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。用法opendir(path,context)


while ( $sFile = readdir( $ocfolder ) ) // readdir() 函数返回由 opendir() 打开的目录句柄中的条目 语法:readdir(dir_stream)
{
if ( $sFile != '.' && $sFile != '..' )
{
if ( is_dir( $dirs . $sFile ) ) // 判断是否为目录,是返回ture否就返回false;
$aFolders[] = 'dirs:' . $sFile . '
' ;
else
{
$fsize = @filesize( $dirs . $sFile ) ; //filesize() 函数返回指定文件的大小。 语法:filesize(filename)


if ( !$fsize ) {
$fsize = 0 ;
}
if ( $fsize > 0 )
{
$fsize = round( $fsize / 1024 ) ;//round() 函数对浮点数进行四舍五入。 round(x,prec)
if ( $fsize }

$aFiles[] = '文件名:' .$sFile . '文件大小=' . $fsize . 'KB
' ;
}
}
}


// 对目录进行自然排序

natcasesort( $aFolders ) ;//对数组自然排序 natcasesort(array)

foreach ( $aFolders as $sFolder )
{
echo $sFolder ;
}

// 对文件进行自然排序
natcasesort( $aFiles ) ; // 自然1-9,a-z排序natcasesort(array);
foreach ( $aFiles as $sFiles )
{
echo $sFiles ;
}


}

/*
调用方法当前有目录
dirs:1
dirs:www.bKjia.c0m
文件名:1.php
文件名:2.php
*/

listDirFiles();

/*
输出结果为
dirs:1
dirs:www.bKjia.c0m
文件名:1.php文件大小=1KB
文件名:2.php文件大小=2KB

用到函数解析
opendir
则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 "@" 来隐藏 error 的输出。用法opendir(path,context)
is_dir
判断是否为目录,是返回ture否就返回false;
readdir
readdir() 函数返回由 opendir() 打开的目录句柄中的条目 语法:readdir(dir_stream)
filesize()
函数返回指定文件的大小。 语法:filesize(filename)
natcasesort(array)
natcasesort() 函数实现了“自然排序”,即数字从 1 到 9 的排序方法,字母从 a 到 z 的排序方法,短者优先,该函数不区分大小写。数组的索引与单元值保持关联

上一篇:

下一篇: