我尝试将 Doctrine 实体编码为 JSON 字符串,以作为 Ajax 响应发送。所以,我检查了文档:序列化器组件
我尝试使用此代码:
$em = $this->getDoctrine()->getManager();
// Get the entities repository
$sesiones_registradas = $em->getRepository('AuditBundle:AuditSession')->findAll();
// Instance the object
$serializer = new Serializer(array(new JsonEncoder()),array(new GetSetMethodNormalizer()));
// Convert only an item
foreach($sesiones_registradas as $sesion){
echo $serializer->normalize($sesion,'json');
break;
}
// Stop script
die();
最后的代码,失败说:
无法规范化 AppsManantiales\AuditBundle\Entity\AuditSession 类型的对象,找不到支持的规范化器。
如果更改错误消息是$serializer->normalize($sesion,'json')
:$serializer->serialize($sesion, 'json');
不支持 json 格式的序列化
有任何想法吗 ?。