从目录中读取文件名

时间:2017-07-23 16:28:56

标签: php html5

我想从没有任何数据库的目录中读取html文件名。我有一个代码,它的工作正常,但它给出了两个空白名称,而我目录中只有4个文件。

filename:aaaaaa kjnnk_13.html
filename:aaaaaa kjnnk_2.html
filename:aaaaaa kjnnk_6.html
filename:aaaaaa kjnnk_9.html

我有4个html文件,输出应为:

filename:.
filename:..
filename:aaaaaa kjnnk_13.html
filename:aaaaaa kjnnk_2.html
filename:aaaaaa kjnnk_6.html
filename:aaaaaa kjnnk_9.html

但我发现了2个额外的文件名:

{{1}}

请帮忙

2 个答案:

答案 0 :(得分:4)

。是为了当前的目录 ..用于一个目录

使用readdir时,你会获得额外的2个。

我更喜欢使用glob()。该功能还允许您仅过滤html文件

<?php
   $files = glob('dir/*html');
   foreach($files as $file) {
       echo "filename:".$file."<br />";
   }
?>

答案 1 :(得分:0)

或者你可以使用FilesystemIterator默认跳过点文件:

$it = new FilesystemIterator('dir');
foreach ($it as $fileinfo) {
    echo $fileinfo->getFilename() . "<br/>";
}

stackoverflow中的更多答案:

What exactly are the benefits of using a PHP 5 DirectoryIterator over PHP 4 "opendir/readdir/closedir"?

PHP: scandir() is too slow

Difference between DirectoryIterator and FileSystemIterator