我有一个对象需要转换为json以便与API交互,因此我必须维护对象和数组结构。看看下面:将另一个对象转换为json的多维对象
stdClass Object
(
[method] => something
[params] => Array
(
[instructions] => stdClass Object
(
[a] => 1
[b] => 2
)
)
)
它传递给json_encode()
但第二个对象instructions
已被丢失,只是把它变成另一个数组:
{ "method":"something",
"params":{
"instructions": { "a":1,"b":2 }
}
}
当我应该结束了,方括号指令等:
{ "method":"something",
"params":{
"instructions": [ { "a":1,"b":2 } ]
}
}
我注意到有一个像JSON_FORCE_OBJECT这样的预定义常量,但添加了json_encode作为选项似乎有0效果。我错过了什么?
json_encode适当做。指令是一个对象,而不是一个数组,为什么它应该作为一个数组出现? –
没错。但我不知道我没有正确构建我的php对象。这就是为什么我说我的输出应该是最终结果的原因。 – Bob