РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
701 of 1361 menu

Метод exclude класса Finder

Метод exclude класса Finder исключает указанные пути из результатов поиска. Первым параметром передаётся путь или массив путей, которые нужно исключить. Пути задаются относительно директорий, добавленных через метод in. Метод возвращает объект Finder, что позволяет строить цепочки вызовов.

Синтаксис

$finder->exclude(string|array $dirs)

Пример

Давайте найдём все файлы в директории src, исключив из результатов поддиректорию Controller:

<?php namespace AppService; use SymfonyComponentFinderFinder; class FinderService { public function findFiles(): array { $finder = new Finder(); $finder->files()->in('src')->exclude('Controller'); $res = []; foreach ($finder as $file) { $res[] = $file->getRelativePathname(); } return $res; } } ?>

Результат выполнения кода:

["Service/FinderService.php", "Entity/Article.php"]

Пример

Давайте исключим сразу несколько директорий, передав их массивом:

<?php namespace AppService; use SymfonyComponentFinderFinder; class FinderService { public function findFiles(): array { $finder = new Finder(); $finder ->files() ->in('src') ->exclude(['Controller', 'Entity']); $res = []; foreach ($finder as $file) { $res[] = $file->getRelativePathname(); } return $res; } } ?>

Результат выполнения кода:

["Service/FinderService.php"]

Пример

Давайте исключим вложенную директорию, указав путь относительно директории поиска:

<?php namespace AppService; use SymfonyComponentFinderFinder; class FinderService { public function findFiles(): array { $finder = new Finder(); $finder ->files() ->in('src') ->exclude('Service/Sub'); $res = []; foreach ($finder as $file) { $res[] = $file->getRelativePathname(); } return $res; } } ?>

Результат выполнения кода:

["Service/FinderService.php", "Service/Other.php"]

Смотрите также

  • класс Finder,
    который ищет файлы и директории
  • метод in,
    который задаёт директории для поиска
  • метод notPath,
    который исключает пути по шаблону
  • метод notName,
    который исключает файлы по имени
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить