如何知道php中指定目录中有哪些文件

有时我们操作目录,需要知道目录中有文件,有哪些文件。为此,需要读取目录内容。今天,我将介绍PHP如何从指定目录中获取文件,并返回目录中的文件和文件夹名称。

在D盘创建一个名为“demo”的目录,该目录下有这些文件:

1628239808702149

想要获取“D:/demo”下的这些文件,输出它们的文件名,需要怎么做呢?

直接附上实现代码:

<?php
$dir = 'D:/demo';
if(is_dir($dir)){
    $info = opendir($dir);
    while (($file = readdir($info)) !== false) {    //用不全等于是区分如果文件夹名字为0的时候,那么0!==false,仍然可以遍历
        echo $file.'<br>';
    }
    closedir($info);
}
?>

知道会输出什么吗?看看输出结果吧:

1628240122547828

我们来分析一下:

  • 首先是使用opendir($dir)来打开一个目录。

  • 然后是使用readdir($info)来获取打开目录$info中下一个文件或目录的名称;因为一次只能获取一个文件/目录,所以需要借助while()循环,以获取并输出全部的文件/目录。

  • 最后使用closedir($info)来关闭目录。

说明:在对一个目录的操作结束之后,需要使用closedir()函数关闭已打开的目录,即释放操作目录时所占用的资源。而不仅仅是目录,文件也是,在操作完成之后也需使用fclose()函数关闭。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片