PHP JSon如何读取以JSon格式接收的布尔值并在PHP上以字符串形式写入
我从另一个站点接收到此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字符串中,假值不在之间""
。
是否可以访问和读取错误值并将其转换为字符串值?
谢谢您的帮助!
回答:
您可以像这样使用它,其JSON
格式为:当您评估false
价值时将给您blank
,而当您评估价值true
将给您1
。
$str = '[{"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"}]';$arr = json_decode($str,true);
if($arr[0]['ext']['fm.ack']) // suggested by **mario**
{
echo "true";
}
else {
echo "false";
}
以上是 PHP JSon如何读取以JSon格式接收的布尔值并在PHP上以字符串形式写入 的全部内容, 来源链接: utcz.com/qa/404053.html