[英]Extract JSON Data with PHP
假设下面是我的 JSON 数据
{"pricing": {
"com": {
"addons": {
"dns": true,
"email": true,
"idprotect": true
},
"org": {
"addons": {
"dns": true,
"email": true,
"idprotect": true
},
"net": {
"addons": {
"dns": true,
"email": true,
"idprotect": true
}
}}
我只想从 JSON 上方显示(com、org、net)。 我们怎么做?
这样做的一个选项是使用json_decode并为第二个参数传递true
以将返回的对象转换为关联数组。
要仅显示键,您可以使用foreach循环$output["pricing"]
并显示键:
$json = '{"pricing": {"com": {"addons": {"dns": true,"email": true,"idprotect": true}},"org": {"addons": {"dns": true,"email": true,"idprotect": true}},"net": {"addons": {"dns": true,"email": true,"idprotect": true}}}}';
$output = json_decode($json, true);
foreach ($output["pricing"] as $key => $value) {
echo $key . "<br>";
}
另一种方法是获取array_keys并循环它们:
foreach (array_keys($output["pricing"]) as $key) {
echo $key . "<br>";
}
首先你有一个不正确的 JSON 格式检查出来。 我认为这个解决方案可能对你有帮助!!
$json = '{"pricing": {"com": {"addons": {"dns": true,"email": true,"idprotect": true}},"org": {"addons": {"dns": true,"email": true,"idprotect": true}},"net": {"addons": {"dns": true,"email": true,"idprotect": true}}}}';
$output = json_decode($json);
print_r($output->pricing->com->addons);
print_r($output->pricing->org->addons);
print_r($output->pricing->net->addons);
你会得到这样的东西!!
stdClass Object ( [dns] => 1 [email] => 1 [idprotect] => 1 )
stdClass Object ( [dns] => 1 [email] => 1 [idprotect] => 1 )
stdClass Object ( [dns] => 1 [email] => 1 [idprotect] => 1 )
你在找这个吗??
$json = '{"pricing": {"com": {"addons": {"dns": true,"email": true,"idprotect": true}},"org": {"addons": {"dns": true,"email": true,"idprotect": true}},"net": {"addons": {"dns": true,"email": true,"idprotect": true}}}}';
$output = json_decode($json,true);
echo implode(",",array_keys($output["pricing"]));
com,org,net
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.