php中函数readdir()的返回值中的单点和双点是什么?

时间:2013-07-29 00:48:40

标签: php readdir opendir

我对php.net中为函数is_dir()描述的概念感到困惑,它说

  

判断给定的文件名是否为目录

(1)它检查给定的参数是否是一个目录,当我给它一个路径时,它成功返回true,但它使用术语给定文件名,如果我知道它是filename(文件返回false),为什么我要首先检查它?

(2)这里有我困惑的地方,readdir返回文件位于给定文件夹内,它返回文件名但在循环opendir()时返回单点和双点,所以,点在返回值中的确切含义是什么?

1 个答案:

答案 0 :(得分:3)

我觉得很简单。
单点表示当前目录,双点表示父目录 在根目录中没有双点。
如果使用“ls -a”Linux命令,则会有相同的输出(单点和双点)。
在某些情况下,这非常有用,可以查看父目录或当前目录中给出的权限 我不确定它,但我认为readdir函数使用相同的接口导致点。 (也许php只是在内部使用“ls”语句或类似的东西)

你可以简单地在循环中跳过这两个“文件”,例如:

if ($file == "." or $file == "..") continue;