, * psr-0?: array, * classmap?: array, * autoloadFileList?: array, * files?: array, * } $data */ public function register(array $data): void { /* load "psr-4", "psr-0", "classmap" */ $this->namespaceLoader->register($data); /* load "autoloadFileList" */ $this->registerAutoloadFileList($data); /* load "files" */ $this->registerFiles($data); } /** * @param array $data */ private function registerAutoloadFileList(array $data): void { $keyName = 'autoloadFileList'; if (!isset($data[$keyName])) { return; } foreach ($data[$keyName] as $filePath) { if ($this->fileManager->exists($filePath)) { require_once($filePath); } } } /** * @param array $data */ private function registerFiles(array $data): void { $keyName = 'files'; if (!isset($data[$keyName])) { return; } foreach ($data[$keyName] as $filePath) { if ($this->fileManager->exists($filePath)) { require_once($filePath); } } } }