
PHP多层嵌套JSON数据解析优化
本文探讨如何有效解析PHP中多层嵌套的JSON数据,特别是针对性别和人数信息的提取。原始代码存在键值匹配错误,导致数据解析失败。以下提供改进后的代码和详细解释。
问题根源在于原始代码使用了错误的JSON键名,导致无法正确访问性别和人数信息。
改进后的代码:
立即学习“PHP免费学习笔记(深入)”;
<?php$jsonData = '[ { "school": "a校", "grade": "一年级", "class": "一班", "numbers": [ "男#25", "女#29" ] }, { "school": "a校", "grade": "一年级", "class": "二班", "numbers": [ "男#30", "女#22" ] }]';$data = json_decode($jsonData, true);foreach ($data as $item) { echo "{$item['grade']}
{$item['school']} {$item['class']}
"; foreach ($item['numbers'] as $number) { list($gender, $count) = explode('#', $number); echo "{$gender}:{$count}
"; } echo "
";}?>
代码改进说明:
更清晰的键名: 将JSON键名修改为更具描述性的名称,例如将”g”改为”grade”,”c”改为”class”,”n”改为”numbers”,提高代码可读性和维护性。
使用更简洁的循环: 使用foreach循环遍历JSON数据,更易于理解和维护。
数据拆分: 使用explode('#', $number)函数将性别和人数信息拆分开,避免了直接输出字符串的冗余。
更清晰的输出: 输出格式更清晰,更易于阅读,直接显示性别和人数。
输出结果:
一年级a校 一班
男:25
女:29
一年级a校 二班
男:30
女:22
通过以上改进,代码能够准确地解析JSON数据,并清晰地显示学校、年级、班级、性别以及人数信息。 这使得代码更易于理解、维护和扩展。
以上就是PHP多层嵌套JSON数据输出:如何正确解析性别和人数信息?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1253413.html
微信扫一扫
支付宝扫一扫