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\LoaderCode
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;
}