PHP解析并输出JSON多层嵌套数据
处理JSON多层嵌套数据并提取特定信息,需要巧妙地运用PHP的数组操作功能。以下示例演示如何高效地完成此任务:
示例JSON数据:
[ { "school": "A校", "grade": "一年级", "class": "一班", "students": [ "男#25", "女#29" ] }, { "school": "A校", "grade": "一年级", "class": "二班", "students": [ "男#30", "女#22" ] }]
登录后复制
目标HTML输出结构:
立即学习“PHP免费学习笔记(深入)”;
学校
年级
班级
- 性别:人数
- 性别:人数
登录后复制
PHP代码实现:
$jsonData = '[ { "school": "A校", "grade": "一年级", "class": "一班", "students": [ "男#25", "女#29" ] }, { "school": "A校", "grade": "一年级", "class": "二班", "students": [ "男#30", "女#22" ] }]';$jsonArray = json_decode($jsonData, true);foreach ($jsonArray as $schoolData) { echo "" . $schoolData['school'] . " " . $schoolData['grade'] . " " . $schoolData['class'] . "
"; echo ""; foreach ($schoolData['students'] as $studentData) { list($gender, $count) = explode('#', $studentData); echo "" . $gender . ":" . $count . ""; } echo "";}
登录后复制
代码解释:
json_decode($jsonData, true): 将JSON字符串解码为关联数组。true参数确保返回关联数组,而不是对象。第一个foreach循环迭代学校数据。explode(‘#’, $studentData): 使用#作为分隔符,将学生数据分割成性别和人数。list($gender, $count): 将explode的结果赋值给$gender和$count变量。第二个foreach循环迭代每个学校的学生数据,并输出HTML。
这段代码清晰地展示了如何使用PHP高效地处理JSON多层嵌套数据,并根据需求生成HTML输出。 它避免了不必要的嵌套循环,提高了代码的可读性和效率。
以上就是PHP如何高效处理JSON多层嵌套数据并循环输出特定信息?的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1795536.html