【发布时间】:2017-10-28 14:00:03
【问题描述】:
我想向 JSON 编码实体添加额外的字段。但是这个字段不会在数据库中。它只是一个虚拟字段或函数。我有这样的实体;
/**
* @ORM\Table(name="sample_table")
* @ORM\Entity()
*/
class InstagramUser
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM\Column(type="string")
*/
private $userName;
/**
* @ORM\Column(type="string", nullable=true)
*/
private $fullName;
...
private $extraField = "EXTRA_FIELD";
}
通常,Symfony 像这样序列化这个实体;
[{
"id": 1,
"userName": "USER_NAME",
"fullName": "FULL_NAME"
},...]
问题:我想将此字段添加到 JSON 数据中。我怎样才能做到这一点?我想得到这样的 JSON;
[{
"id": 1,
"userName": "USER_NAME",
"fullName": "FULL_NAME",
"extraField": "EXTRA_FIELD"
},...]
【问题讨论】:
标签: php json symfony serialization doctrine-orm