gpt4 book ai didi

php - 将 JSON 解码为 Symfony 实体

转载 作者:可可西里 更新时间:2023-11-01 00:10:43 30 4
gpt4 key购买 nike

除了编写自定义脚本将 JSON 对象解码为 PHP 实体之外,有谁知道是否有简单的方法?

我正在使用下面的脚本编码为 JSON,但是当我解码时它是一个数组而不是一个实体。

$serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new 
JsonEncoder()));
$json = $serializer->serialize($coupon, 'json');
$session->set('json', $json);

然后我就这样解码

$session = $this->getRequest()->getSession();
$json = $session->get('json');
$serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new JsonEncoder()));
$coupon = $serializer->decode($json, 'json');

但正如我所说...它不再是优惠券实体,它只是一个数组。

最佳答案

假设以下工作:

$session = $this->getRequest()->getSession();
$json = $session->get('json');
$serializer = new Serializer(array(new GetSetMethodNormalizer()), array('json' => new JsonEncoder()));
$coupon = $serializer->decode($json, 'json');

$coupon 是序列化数据的规范化数组。然后假设您希望实例化此数据的类称为 Coupon,您需要对其进行非规范化:

$coupon = $serializer->denormalize($coupon, 'Coupon');

注意命名空间,类名 Coupon 可能不正确。

关于php - 将 JSON 解码为 Symfony 实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7483565/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com