0

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

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

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

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

index.jpg
index.php
template.dtd

我注意到,如果我不使用该 is_file if 子句,它将返回所有文件名;但我真的需要那个 if 子句。

4

2 回答 2

1

我会花点时间猜测这三个文件同时存在于当前目录和父目录中。scandir()只返回文件名,is_file($file)当你的意思是is_file("../$file").

于 2009-10-30T03:20:33.383 回答
1

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

于 2009-10-30T03:22:55.710 回答