HtmGem/tests/utils.inc.php

23 lines
811 B
PHP
Raw Normal View History

2021-03-24 09:53:12 +00:00
<?php declare(strict_types=1);
2021-04-04 20:23:38 +00:00
function getFiles($directory, $targetExtension): generator {
2021-03-24 09:53:12 +00:00
$flags =
FilesystemIterator::KEY_AS_PATHNAME
| FilesystemIterator::CURRENT_AS_FILEINFO
| FilesystemIterator::SKIP_DOTS
;
#TODO: Prevent preloading of symlinks. Otherwise it keeps loading instead of not
# going into.
#TODO: Prevent going into .git/ by browsing "manually" instead of RecursiveIteratorIterator
$dir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory, $flags));
foreach ($dir as $fileinfo) {
$filename = $fileinfo->getFilename();
$filePathname = $fileinfo->getPathname();
$extension = $fileinfo->getExtension();
2021-04-04 20:23:38 +00:00
if ($targetExtension == $extension) {
2021-03-24 09:53:12 +00:00
yield $filePathname;
}
}
}