- Модуль: documentgenerator
- Путь к файлу: ~/bitrix/modules/documentgenerator/lib/registry.php
- Класс: BitrixDocumentGeneratorRegistry
- Вызов: Registry::getFromPath
protected function getFromPath($path, $subPath = '\')
{
$result = [];
$fullBaseClassName = $this->getBaseClassName();
if(Directory::isDirectoryExists($path))
{
$baseDirectory = scandir($path);
foreach($baseDirectory as $fileName)
{
if($fileName == '.' || $fileName == '..')
{
continue;
}
$subdir = Path::combine($path, $fileName);
if(Directory::isDirectoryExists($subdir))
{
$result = array_merge($result, $this->getFromPath($subdir, $subPath.$fileName.'\'));
}
elseif(GetFileExtension($fileName) == 'php')
{
$fullClassName = mb_strtolower($fullBaseClassName.$subPath.GetFileNameWithoutExtension($fileName));
if($this->checkClassName($fullClassName))
{
$result[$fullClassName] = [
'NAME' => $fullClassName::getLangName(),
'CLASS' => $fullClassName,
'MODULE' => Driver::MODULE_ID,
];
}
}
}
}
return $result;
}