PHP 如何将 json 转换为对象?

2017-07-25 00:56:46 +08:00
 RobberPhex

比如

{
  "a": "b",
  "c": "d",
}

需要转化为类:

class A {
  public $a;
  public $b;
}

我想到的方案如下:

  1. 添加 props 属性
class A {
  public $a;
  public $b;
  const props = [
    'a',
    'b'
  ];
}

但是这样一来,信息就比较冗余了。

  1. 动态添加属性
class A {
  const props = [
    'a',
    'b'
  ];
}

$a 和$b 动态添加给 this。

但是显然,失去了 IDE、静态代码分析工具的支持。


目前我觉得 Go 中的,json.Marshal, json.Unmarshal 还是比较方便的,但是看起来不太适合 PHP ?

7361 次点击
所在节点    PHP
41 条回复
opengg
2017-07-26 16:01:11 +08:00
json 没有类型信息,瞎搞啥呀。

需要类型的话,你改用 wsdl 吧,舒服了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/377697

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX