📅  最后修改于: 2023-12-03 15:33:39.284000             🧑  作者: Mango
有时候我们需要读取某个目录下所有的PHP文件,这时候我们可以使用PHP内置的函数来实现。下面介绍两种方法。
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
可以帮助我们遍历符合正则表达式的文件路径。
//获取某个目录下所有的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
循环输出。