sidus/converter-bundle

用于通过Yaml配置转换复杂数据类型的Symfony/Serializer的替代品。

0.2.6 2024-09-10 13:46 UTC

This package is auto-updated.

Last update: 2024-09-10 13:47:07 UTC


README

用于通过Yaml配置转换复杂数据类型的Symfony/Serializer的替代品。

事件处理顺序(优先级)

  1. CheckInputTypeSubscriber (10000)
    • 确保输入类型受支持
  2. BehaviorsHandlerSubscriber (1200)
    • 从行为中附加映射配置
  3. PropertiesExtractorSubscriber (1000)
    • 根据映射配置从输入数据中提取属性
  4. AutoMappingExtractorSubscriber (900)
    • 如果启用了自动映射选项,则自动从输入中提取剩余属性
  5. TransformerSubscriber (800)
    • 使用转换器配置转换提取的属性
  6. OutputCreatorSubscriber (400)
    • 创建输出对象,通过使用构造函数和可用的属性,或者如果启用了hydrate_object选项,则创建一个没有构造函数的新实例。
  7. HydratorSubscriber (200)
    • 如果启用了hydrate_object选项,则使用转换后的属性填充输出对象。
  8. PropertiesSetterSubscriber (0)
    • 通过PropertyAccessor在输出对象上设置属性
  9. CheckRemainingPropertiesSubscriber (-10000)
    • 检查输入数据中是否有未处理剩余属性