Как я могу рекурсивно находить файлы CSS?

#php #html #css

#php #HTML #css

Вопрос:

Есть ли способ для меня рекурсивно искать файлы css, используя следующий код?

Каталог, который я ищу, — это «темы / Эволюция». Я хочу, чтобы он также выполнял поиск файлов css в подкаталогах.

 <?php
 
// Does not support flag GLOB_BRACE
function rglob($pattern, $flags = 0) {
    $files = glob($pattern, $flags); 
    foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir) {
        $files = array_merge($files, rglob($dir.'/'.basename($pattern), $flags));
    }
    return $files;
}
 
?>  

Ответ №1:

Попробуйте это:

 $directoryWhereToSearch = 'themes/Evolution';
$allFiles = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directoryWhereToSearch));
$cssFiles = new RegexIterator($allFiles, '/.css$/i');
foreach ($cssFiles as $cssFile) {
    echo $cssFile->getFilename();
}
  

Комментарии:

1. Мне просто добавить каталог «темы / Эволюция» в getRealPath?

2. Это работает, но есть ли способ не видеть полное имя каталога? Мне нужно только имя файла.

3. Это было идеально! Огромное спасибо, Казз! Вы очень помогли!