FOSRestBundle输出错误的xml

FOSRestBundle输出错误的xml,xml,rest,symfony,fosrestbundle,Xml,Rest,Symfony,Fosrestbundle,当我请求XML时,我的XML输出看起来很好 控制器: use FOS\RestBundle\Controller\Annotations as REST; class RestController { /** * @REST\View */ public function getAgenciesAction() { return array("bb"=>array('zz'=>'vv'),'zz'); } } 请求头: Ace

当我请求XML时,我的XML输出看起来很好

控制器:

use FOS\RestBundle\Controller\Annotations as REST;
class RestController {
    /**
     * @REST\View
     */
    public function getAgenciesAction() {
      return array("bb"=>array('zz'=>'vv'),'zz');
    }
}
请求头:
Aceept:application/xml

响应

<?xml version="1.0" encoding="UTF-8"?>
<result>
  <entry>
    <entry><![CDATA[vv]]></entry>
  </entry>
  <entry><![CDATA[zz]]></entry>
</result>


为什么只返回结束节点而不返回所有键和值?

FOSRestBundle中的xml序列化程序不会使用键序列化数组。无论键是什么,每个数组条目都将在响应中显示为
。示例中的输出是正确的。键只与json输出相关

序列化的实体具有正确的输出,因为该字段将产生
value

示例控制器

/**
*@ApiDoc(
*description=“返回自己的用户详细信息”,
*状态码={
*200=“成功时返回”,
*403=“缺少权限时返回”,
*     }
* )
*
*@Rest\Get(“/users/me”)
*@Rest\View(serializerGroups={“details”})
*/
公共函数getMeAction()
{
$user=$this->getUser();
返回数组('user'=>$user);
}
以及回应。您可以看到,键
user
作为
输出



别忘了接受答案。酷!这真的很有趣:)