このJSON文字列を別のサイトから受け取りましたが、受け取ったものを変更できません。文字列は$_POSTで受信され、次のようになります。
[
{
"clientId":"17295c59-4373-655a-1141-994aec1779dc",
"channel":"\/meta\/connect",
"connectionType":"long-polling",
"ext":{
"fm.ack":false,
"fm.sessionId":"22b0bdcf-4a35-62fc-3764-db4caeece44b"
},
"id":"5"
}
]
次のコードでJSON文字列をデコードします。
$receive = json_decode(file_get_contents('php://input'));
そして、私が使用するprint_r($receive)
と、次のようになります。
Array (
[0] => stdClass Object
(
[clientId] => 17295c59-4373-655a-1141-994aec1779dc
[channel] => /meta/connect
[connectionType] => long-polling
[ext] => stdClass Object
(
[fm.ack] =>
[fm.sessionId] => 22b0bdcf-4a35-62fc-3764-db4caeece44b
)
[id] => 5
)
)
すべての配列/オブジェクトに問題なくアクセスして読み取ることができます:
$receive[$i]->clientId;
$receive[$i]->channel;
$connectionType = $receive[$i]->connectionType;
$receive[$i]->id;
$receive[$i]->ext->{'fm.sessionId'};
しかし、{fm.ack}は空です
デコードされたJSON文字列では、false値はの間にありません""
。
false値にアクセスして読み取り、代わりに文字列値に変換することは可能ですか?
助けてくれてありがとう!