我们在项目中可能经常会碰到获取指定目录下的所有文件及子文件夹列表需求,今天我就把我在项目中用到的一段获取指定目录下的所有文件及子文件夹列表的代码分享给大家,非常的实用,话不多说,直接上代码。
//遍历目录下面的所有文件和目录,2019年2月15日
$str = opendir('./');//指定获取此目录下的文件及文件夹列表
while( ($filename = readdir($str)) !== false )
{
if($filename != "." && $filename != "..")
{
//判断是否是文件,文件放在文件列表数组中,子文件夹放在子文件夹列表数组中
if (is_file($filename)){
$file_array[]=$filename;
}else{
$dir_array[]=$filename;
}
}
}
closedir($str);
//以数组形式打印文件夹目录下面的所有文件列表
print_r($file_array);
//以数组形式打印文件夹目录下面的所有子文件夹列表
print_r($dir_array);
打印结果,文件及子文件夹列表以二个数组的方式打印出来。
Array
(
[0] => AliYun.php.bak
[1] => count.php
[2] => count.php.bak
[3] => curl.php
[4] => cz88.php
[5] => cz88.php.bak
[6] => date.php
[7] => date.php.bak
[8] => demgs.php
[9] => demgs.php.bak
[10] => dir.php
[11] => dir.php.bak
[12] => domain.txt
[13] => explode.php
[14] => explode.php.bak
[15] => gethostbynamel.php
[16] => gethostbynamel.php.bak
[17] => header.php
[18] => header.php.bak
[19] => isset.php
[20] => isset.php.bak
[21] => json_decode.php
[22] => json_decode.php.bak
[23] => json_encode.php
[24] => json_encode.php.bak
[25] => krsort.php
[26] => krsort.php.bak
[27] => mac.php
[28] => mac.php.bak
[29] => mkdir.php
[30] => mkdir.php.bak
[31] => mobile.php
[32] => mobile.php.bak
[33] => pow.php
[34] => pow.php.bak
[35] => QQWry.Dat
[36] => return.log
[37] => sms.php
[38] => sms.php.bak
[39] => strtolower.php
[40] => strtolower.php.bak
)
Array
(
[0] => mkdir
[1] => qcloudsms_php
[2] => test
)