You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PHP提取JSON数据中的com、org、net字段?

用PHP提取JSON中的com、org、net字段的方法

嘿,我来帮你搞定这个需求!你手头有一段包含pricing层级的JSON数据,想要只提取其中的com、org、net这几个部分,用PHP其实很简单,分几步就能实现:

首先先把你的原始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 }}}}

接下来是具体的实现步骤和代码:

方法一:使用关联数组操作

// 定义完整的JSON字符串
$jsonData = '{"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解析为PHP关联数组(第二个参数传true)
$decodedArray = json_decode($jsonData, true);

// 提取pricing下的com、org、net字段
$targetData = [
    'com' => $decodedArray['pricing']['com'],
    'org' => $decodedArray['pricing']['org'],
    'net' => $decodedArray['pricing']['net']
];

// 输出格式化后的结果
echo json_encode($targetData, JSON_PRETTY_PRINT);

方法二:使用对象操作

如果你习惯用对象来处理数据,也可以这样写:

// 定义完整的JSON字符串
$jsonData = '{"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解析为PHP对象(默认不传第二个参数)
$decodedObj = json_decode($jsonData);

// 提取pricing下的com、org、net字段
$targetData = (object)[
    'com' => $decodedObj->pricing->com,
    'org' => $decodedObj->pricing->org,
    'net' => $decodedObj->pricing->net
];

// 输出格式化后的结果
echo json_encode($targetData, JSON_PRETTY_PRINT);

运行上面的代码后,你就能得到只包含com、org、net三个字段的结构啦,不管是数组还是对象形式,都能满足后续的使用需求。

内容的提问来源于stack exchange,提问作者Rahul Mukati

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:49:18