ReflectionMapper v1.0.0
Гидратация и сериализация public-свойств DTO с валидацией.
Описание: Маппер public non-static свойств: конверсия типов, #[ArrayOf], запуск ValidationRule, сериализация в массив. Используется из AbstractReflection и может вызываться напрямую.
Namespace: Devcraft\Mapper
С версии: 1.0.0
См. также:
__construct(LoggerInterface $logger, PropertyValidator $validator = new PropertyValidator())
Параметры:
$logger(LoggerInterface): логгер сбоев валидации/конверсии$validator(PropertyValidator): опциональный кастомный валидатор
hydrate(object $target, array $data): object
Описание: Гидратирует public-свойства $target из $data. Собирает ошибки; при непустой карте бросает ValidationException.
Исключения: ValidationException
toArray(object $source): array
Описание: Экспорт инициализированных public-свойств. Вложенные AbstractReflection и массивы нормализуются рекурсивно.
Поток гидратации свойства
- Missing /
null→ null fallback (default /null/is required) - Конверсия по declared type (+ nested DTO /
ArrayOf) PropertyValidator::validateValue- При сбое на nullable — свойство =
null+ log; иначе путь в error map
Union/intersection property types не поддерживаются.