doucheng9634 2019-02-26 14:43
浏览 74
已采纳

多个jsonSerialize实体

I've been doing some research without any result. So I come here to ask directly the question.

I have an entity, in order to return it into some api call, I need to serialize it.

For now I have something like that

class Place implements \JsonSerializable{
    [...] fields lists [...]

    public function jsonSerialize(){
        return array(
            "id" => $this->id,
            "title"  => $this->title);
   }
}

This is working right, but, i would like to be able to have multiple definition for the serialization because for the api1 I might want to return id and title, but may be for the api2 I would like to return id / title and resume.

Is there a way to make a condition into the jsonSerialize() ? Or some other way ? I'm pretty sure I already have done something like that in Java, that might be possible in php.

Thanks for your help.

  • 写回答

1条回答 默认 最新

  • duanpa2143 2019-02-26 14:48
    关注

    Since Symfony 2.7, you can use the serializer and serializer groups to provide different data. You can set it up via annotation.

    Otherwise, you can use JMSSerializerBundle, it contains alose groups and other useful features. JMSSerializerBundle

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?