2010-11-12 51 views
0

我的代码 -列出目录中的所有文件,额外的信息来这里

if ($handle = opendir('banner/')) {  
    while (false !== ($file = readdir($handle))) { 
     echo "$file"; 
    }  
    closedir($handle); 
} 

wher我运行此代码不必要的点(。)来了。 输出image-3.jpgimage-4.jpgimage-1.jpgimage-2.jpgimage-5.jpg...为什么3个点在最后?

+0

右侧添加

if ($file != '.' && $file != '..') 

请在你的工作接受率 - 从常见问题解答:当你决定哪个答案是最有帮助的你,通过单击答案左侧的复选框大纲将其标记为接受的答案。这让其他人知道你已经收到了你的问题的一个很好的答案。这样做很有帮助,因为它向其他人表明您从社区中获得价值。 (如果你不这样做,人们会经常礼貌地要求你回去接受更多问题的答案!) – oezi 2010-11-12 12:57:23

回答

3

因为.是当前目录,..是父目录。

它们总是存在。

如果你需要将它们排除在外 - 之前echo

0

这是因为您的目录中没有您看到的项目......其中一个是.,代表当前目录,另一个是..,代表当前目录之上的目录。您需要从readdir结果中筛选出来。

相关问题