function EventWithPackageListTrait::getKeyedPackages

Gets packages as a keyed array.

Parameters

string[] $packages: The packages, in the form 'vendor/name:version'.

Return value

string[] An array of packages where the values are version constraints and keys are package names in the form `vendor/name`. Packages without a version constraint will default to `*`.

2 calls to EventWithPackageListTrait::getKeyedPackages()
EventWithPackageListTrait::getDevPackages in core/modules/package_manager/src/Event/EventWithPackageListTrait.php
Gets the dev packages.
EventWithPackageListTrait::getRuntimePackages in core/modules/package_manager/src/Event/EventWithPackageListTrait.php
Gets the runtime (i.e., non-dev) packages.

File

core/modules/package_manager/src/Event/EventWithPackageListTrait.php, line 85

Class

EventWithPackageListTrait
Common methods for pre- and post-require events.

Namespace

Drupal\package_manager\Event

Code

private function getKeyedPackages(array $packages) : array {
  $keyed_packages = [];
  foreach ($packages as $package) {
    if (strpos($package, ':') > 0) {
      [
        $name,
        $constraint,
      ] = explode(':', $package);
    }
    else {
      [
        $name,
        $constraint,
      ] = [
        $package,
        '*',
      ];
    }
    $keyed_packages[$name] = $constraint;
  }
  return $keyed_packages;
}

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