src/Templates/Validator/ArrayItem.phptpl
is_array($value) && (function (&$items) use (&$invalidItems{{ suffix }}, $modelData) {
{% if generatorConfiguration.collectErrors() %}
$originalErrorRegistry = $this->_errorRegistry;
{% endif %}
foreach ($items as $index => &$value) {
{% if generatorConfiguration.collectErrors() %}
$this->_errorRegistry = new {{ viewHelper.getSimpleClassName(generatorConfiguration.getErrorRegistryClass()) }}();
{% endif %}
try {
{{ viewHelper.resolvePropertyDecorator(nestedProperty) }}
{% foreach nestedProperty.getOrderedValidators() as validator %}
{{ viewHelper.renderValidator(validator, schema) }}
{% endforeach %}
{% if generatorConfiguration.collectErrors() %}
if ($this->_errorRegistry->getErrors()) {
$invalidItems{{ suffix }}[$index] = $this->_errorRegistry->getErrors();
}
{% endif %}
} catch (\Exception $e) {
// collect all errors concerning invalid items
isset($invalidItems{{ suffix }}[$index])
? $invalidItems{{ suffix }}[$index][] = $e
: $invalidItems{{ suffix }}[$index] = [$e];
}
}
{% if generatorConfiguration.collectErrors() %}
$this->_errorRegistry = $originalErrorRegistry;
{% endif %}
return !empty($invalidItems{{ suffix }});
})($value)