Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ValidatingArrayLoader.php

function ValidatingArrayLoader::validateFlatArray

@phpstan-param non-empty-string $property @phpstan-param non-empty-string|null $regex

1 call to ValidatingArrayLoader::validateFlatArray()
ValidatingArrayLoader::load in vendor/composer/composer/src/Composer/Package/Loader/ValidatingArrayLoader.php
@inheritDoc

File

vendor/composer/composer/src/Composer/Package/Loader/ValidatingArrayLoader.php, line 570

Class

ValidatingArrayLoader
@author Jordi Boggiano <j.boggiano@seld.be>

Namespace

Composer\Package\Loader

Code

private function validateFlatArray(string $property, ?string $regex = null, bool $mandatory = false) : bool {
    if (!$this->validateArray($property, $mandatory)) {
        return false;
    }
    $pass = true;
    foreach ($this->config[$property] as $key => $value) {
        if (!is_string($value) && !is_numeric($value)) {
            $this->errors[] = $property . '.' . $key . ' : must be a string or int, ' . gettype($value) . ' given';
            unset($this->config[$property][$key]);
            $pass = false;
            continue;
        }
        if ($regex && !Preg::isMatch('{^' . $regex . '$}u', (string) $value)) {
            $this->warnings[] = $property . '.' . $key . ' : invalid value (' . $value . '), must match ' . $regex;
            unset($this->config[$property][$key]);
            $pass = false;
        }
    }
    return $pass;
}
RSS feed
Powered by Drupal