PHP scandir奇怪的行为

时间:2009-10-30 03:17:54

标签: php scandir

好的,所以我要做的就是扫描“上一个”文件夹。

$scanned = scandir("..");
foreach($scanned as $file){

if(is_file($file)){
    print $file."<br />";       
   }
}

即使在我的“..”目录中,我有20多个文件,我只得到三行

index.jpg
index.php
template.dtd

我注意到,如果我没有;请使用is_file if子句返回所有文件名;但我真的需要if if。

2 个答案:

答案 0 :(得分:1)

我要花一点时间猜测这三个文件是否存在于当前目录和父目录中。 scandir()仅返回文件名,而当您指is_file($file)时,您正在调用is_file("../$file")

答案 1 :(得分:1)

您的函数正在测试当前目录中的文件名,而不是之前的目录。要获得所需的结果,请尝试:is_file('../'。$ file)。