function Composer::findPackageKey

Same name in other branches
  1. 8.9.x core/lib/Drupal/Core/Composer/Composer.php \Drupal\Core\Composer\Composer::findPackageKey()

Find the array key for a given package name with a case-insensitive search.

@internal

Parameters

string $package_name: The package name from composer. This is always already lower case.

Return value

string|null The string key, or NULL if none was found.

1 call to Composer::findPackageKey()
Composer::vendorTestCodeCleanup in core/lib/Drupal/Core/Composer/Composer.php
Remove possibly problematic test files from vendored projects.

File

core/lib/Drupal/Core/Composer/Composer.php, line 253

Class

Composer
Provides static functions for composer script events.

Namespace

Drupal\Core\Composer

Code

protected static function findPackageKey($package_name) {
    $package_key = NULL;
    // In most cases the package name is already used as the array key.
    if (isset(static::$packageToCleanup[$package_name])) {
        $package_key = $package_name;
    }
    else {
        // Handle any mismatch in case between the package name and array key.
        // For example, the array key 'mikey179/vfsStream' needs to be found
        // when composer returns a package name of 'mikey179/vfsstream'.
        foreach (static::$packageToCleanup as $key => $dirs) {
            if (strtolower($key) === $package_name) {
                $package_key = $key;
                break;
            }
        }
    }
    return $package_key;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.