オブジェクトを持っていて、APIとのやりとりのためにjsonに変換する必要があるので、オブジェクトと配列構造を維持する必要があります。 json_encode()
に別のオブジェクトを含む多次元オブジェクトをjsonに変換する
stdClass Object
(
[method] => something
[params] => Array
(
[instructions] => stdClass Object
(
[a] => 1
[b] => 2
)
)
)
峠それが、第二の目的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