📜  php 获取目录下的所有 php 文件 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:39.284000             🧑  作者: Mango

PHP获取目录下的所有PHP文件

有时候我们需要读取某个目录下所有的PHP文件,这时候我们可以使用PHP内置的函数来实现。下面介绍两种方法。

方法一:使用glob函数

glob()函数可以获取与模式匹配的文件路径名称,我们可以使用它来获取某个目录下的所有PHP文件。

//获取当前目录下所有的PHP文件
$files = glob('/path/to/dir/*.php');

//输出所有PHP文件路径
foreach ($files as $file) {
    echo $file . "\n";
}

以上代码中,我们使用glob()函数来获取/path/to/dir目录下所有以.php结尾的文件路径,并使用foreach循环输出。

方法二:使用RecursiveIteratorIterator和RegexIterator

RecursiveIteratorIterator是一个迭代器类,用于迭代多维迭代器的一种通用方式。它可以用于遍历目录、多维数组等等。

RegexIterator可以帮助我们遍历符合正则表达式的文件路径。

//获取某个目录下所有的PHP文件
$dir = new RecursiveDirectoryIterator('/path/to/dir');
$iterator = new RecursiveIteratorIterator($dir);
$regex = new RegexIterator($iterator, '/^.+\.php$/i', RecursiveRegexIterator::GET_MATCH);

//输出所有PHP文件路径
foreach ($regex as $file) {
    echo $file[0] . "\n";
}

以上代码中,我们使用RecursiveDirectoryIterator来获取/path/to/dir目录下所有文件的迭代器,在初始化RecursiveIteratorIterator时传入该迭代器,再使用正则表达式过滤出所有PHP文件。最后使用foreach循环输出。