Php Symfony序列化程序不';我不能和…一起工作

Php Symfony序列化程序不';我不能和…一起工作,php,symfony,deserialization,serialization,symfony-components,Php,Symfony,Deserialization,Serialization,Symfony Components,我正在使用symfony序列化程序。但是,如果我安装了带有--no dev标志的composer软件包,它将反序列化应该是数组数组中的对象数组的数据 这是序列化: $result = $this->get('serializer')->deserialize( $request->getContent(), InputDto::class, 'json' ); 对于反序列化,我在DTO中使用注释 这是“字段”在DTO for objects数组中的外观

我正在使用symfony序列化程序。但是,如果我安装了带有
--no dev
标志的composer软件包,它将反序列化应该是数组数组中的对象数组的数据

这是序列化:

$result = $this->get('serializer')->deserialize(
    $request->getContent(),
    InputDto::class,
    'json'
);
对于反序列化,我在DTO中使用注释

这是“字段”在DTO for objects数组中的外观:

/**
 * @var OrderItemDto[]|Collection
 */
private $items = [];
根据守则:

如果将选项json\u decode\u associative传递为false

$result = $this->get('serializer')->deserialize(
    $request->getContent(),
    InputDto::class,
    'json',
    ['json_decode_associative' => false]
);
它不应尝试将其转换为数组


要使对象子级工作,您需要添加到
app/config/config.yml
framework
部分的下一行:

property_info:
    enabled: true

给我们看看你的code@TomaszMadeyski很抱歉忘了:)还想提到这个对象数组位于第三层。但我不使用任何深度设置。请在清除应用程序后重试cache@habibun每次部署都会这样做。不幸的是,这没有帮助。它将JSON对象序列化为PHP stdClass,但不是我们需要的类型。