public InstallStorage::getComponentNames(array $list)
Get all configuration names and folders for a list of modules or themes.
Parameters
\Drupal\Core\Extension\Extension[] $list: An associative array of Extension objects, keyed by extension name.
Return value
array Folders indexed by configuration name.
File
- core/lib/Drupal/Core/Config/InstallStorage.php, line 185
Class
- InstallStorage
- Storage used by the Drupal installer.
Namespace
Drupal\Core\Config
Code
public function getComponentNames(array $list) { $extension = '.' . $this->getFileExtension(); $pattern = '/' . preg_quote($extension, '/') . '$/'; $folders = array(); foreach ($list as $extension_object) { // We don't have to use ExtensionDiscovery here because our list of // extensions was already obtained through an ExtensionDiscovery scan. $directory = $this->getComponentFolder($extension_object); if (is_dir($directory)) { // glob() directly calls into libc glob(), which is not aware of PHP // stream wrappers. Same for \GlobIterator (which additionally requires // an absolute realpath() on Windows). // @see https://github.com/mikey179/vfsStream/issues/2 $files = scandir($directory); foreach ($files as $file) { if ($file[0] !== '.' && preg_match($pattern, $file)) { $folders[basename($file, $extension)] = $directory; } } } } return $folders; }
Please login to continue.