PHP如何在文件夹中获得一个没有扩展名的文件数组



我有一个"path/to/folder"。获得没有文件名的文件数组的最佳方法是什么?

我可以用$files = scandir("path/to/folder/", 1);但然后我必须从数组中删除扩展和"。"。有更好的方法来获取文件数组吗?

刚刚添加: P.S.我需要"路径/到/文件夹"中的文件,该文件夹中没有子文件夹。因此,如果文件夹中的文件是"ab.php, cd.php, 123.php, hello.php"

$files =array('ab', 'cd', '123', 'hello');
$files = glob('path/to/files/*.*');
foreach($files as $file) {
    $file = pathinfo($file);
    echo $file['filename'];
}

或者,使用DirectoryIterator类(更快)。

您可以尝试扩展FilesystemIterator,所有您需要的是:

echo new NoExtentionIterator(__DIR__);

使用类

class NoExtentionIterator extends FilesystemIterator {
    public function current() {
        return pathinfo(parent::current(), PATHINFO_FILENAME);
    }
    public function accept() {
        return parent::current()->isfile();
    }
    public function __toString() {
        return implode("n", iterator_to_array($this));
    }
}

相关内容

  • 没有找到相关文章