如何使用序列化程序从对象创建json文件?

问题描述 投票:1回答:1

这是我的对象$ input:

$input = $this->em->getRepository(Data::class)->findAll();

  foreach($input as &$arr){
        $arr->{"Sunshine"} = 'Clouds';
    }

$ input的输出:

Data {#1523 ▼
  -id: 23
  -name: "cat"
  -timestamp: DateTime @1570445917 {#1517 ▶}
  +"Sunshine": "Clouds"
}

我正在使用序列化程序来创建JSON文件$data

  // Serialize your object in JSON
  $context = [
   'circular_reference_handler' => function ($object) {
        return $object->getId();
      },
      'circular_reference_limit' => 0,
    ];

  $data = $serializer->serialize($input, 'json', $context);

$ data:

"[{"id":21,"name":"cat","timestamp":"07.10.2019"}] ◀"

[我想知道为什么JSON文件中没有“ Sunshine”。它与+有关系吗? +是什么意思?

json symfony object serializer
1个回答
0
投票

我认为您分配的密钥不正确。应该这样分配一个键:

$arr['keyName'] = $value

您要像这样分配它:

$arr->{"keyName"} = $value

希望我能帮助您解决这个问题!

© www.soinside.com 2019 - 2024. All rights reserved.