【发布时间】:2017-02-25 15:34:31
【问题描述】:
我有一个小问题。也许有人有一个想法。
我通过以下方式使用 Serializer。函数 json_encode 应用两次的问题。
首先当我调用 $serializer->serialize($post, 'json');
第二次在$response->setData();
所以,要解码,我需要调用两次函数。
有什么想法吗?
$encoders = [
new JsonEncoder()
];
$normalizer = new ObjectNormalizer();
$normalizer->setCircularReferenceHandler(function ($object) {
return $object->getId();
});
$normalizers = [$normalizer];
$serializer = new Serializer($normalizers, $encoders);
$response = new JsonResponse();
$response->setData([
'status' => true,
'data' => $serializer->serialize($post, 'json')
]);
return $response;
【问题讨论】:
-
'data' => $post? -
然后我在编码我的实体和循环引用时遇到了问题。即使实体实现了 JsonSerializable。