【重编】php输出JSON多层嵌套的问题

重新编辑问题:


$ch= '
    [{
        "school": "A校",
        "g": "一年级",
        "c": "一班",
        "n": [
            "男#25",
            "女#29"
        ]
    },
    {
        "school": "A校",
        "g": "一年级",
        "c": "二班",
        "n": [
            "男#30",
            "女#22"
        ]
    
    }]
    '
$chcd= json_decode($ch, true);

for($i=0;$i<count($chcd);$i++){
    echo "".$chcd[$i]['type']."<br /><h1>".$chcd[$i]['school']."&nbsp;&nbsp;".$chcd[$i]['c']."&nbsp;&nbsp;".$chcd[$i]['yy']."</h1>";
 
 echo $chcd->def[$i]->cx; 
 echo "<br /><br />";}

PHP循环输出:

<h1>学校</h1><h2>年级</h2><h3>班级</h3>
<div>
<ul>
<li><u>性别</u>:人数</li>
<li><u>性别</u>:人数</li>
<!--以上"li"循环输出-->
</ul>
</div>

不能循环输出“性别”和“人数”,请求指导!

阅读 2k
1 个回答

不知道是你复制错了,还是哪里问题,你的数组键完全都是错的,肯定得不到结果了。
你的原始数据哪来的type,yy这种键,以下代码重新修改了一下:

<?php
$ch= '
    [{
        "school": "A校",
        "g": "一年级",
        "c": "一班",
        "n": [
            "男#25",
            "女#29"
        ]
    },
    {
        "school": "A校",
        "g": "一年级",
        "c": "二班",
        "n": [
            "男#30",
            "女#22"
        ]
    
    }]';
    
$chcd= json_decode($ch, true);
for($i=0;$i<count($chcd);$i++){
    echo "".$chcd[$i]['g']."<br /><h1>".$chcd[$i]['school']."&nbsp;&nbsp;".$chcd[$i]['c']."&nbsp;&nbsp;"."</h1>"; 
    foreach($chcd[$i]['n'] as $val){
        echo $val."<br />"; 
    }
 echo "<br /><br />";
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题