class DirectoryLoader
Same name in this branch
- 11.1.x vendor/symfony/dependency-injection/Loader/DirectoryLoader.php \Symfony\Component\DependencyInjection\Loader\DirectoryLoader
Hierarchy
- class \Symfony\Component\Routing\Loader\DirectoryLoader extends \Symfony\Component\Config\Loader\FileLoader
Expanded class hierarchy of DirectoryLoader
File
-
vendor/
symfony/ routing/ Loader/ DirectoryLoader.php, line 18
Namespace
Symfony\Component\Routing\LoaderView source
class DirectoryLoader extends FileLoader {
public function load(mixed $file, ?string $type = null) : mixed {
$path = $this->locator
->locate($file);
$collection = new RouteCollection();
$collection->addResource(new DirectoryResource($path));
foreach (scandir($path) as $dir) {
if ('.' !== $dir[0]) {
$this->setCurrentDir($path);
$subPath = $path . '/' . $dir;
$subType = null;
if (is_dir($subPath)) {
$subPath .= '/';
$subType = 'directory';
}
$subCollection = $this->import($subPath, $subType, false, $path);
$collection->addCollection($subCollection);
}
}
return $collection;
}
public function supports(mixed $resource, ?string $type = null) : bool {
// only when type is forced to directory, not to conflict with AttributeLoader
return 'directory' === $type;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary |
---|---|---|---|
DirectoryLoader::load | public | function | |
DirectoryLoader::supports | public | function |