匿名者安逸 2021-07-21 20:58 采纳率: 50%
浏览 46
已结题

PHP Json数据解析问题

想要把这些数据打印下来,反正就是没成功

想要打印的结果:
xxx考试
满分750
得分565

xxx考试
满分850
得分565

{"code":0,"msg":"获取一名学生成绩趋势摘要信息成功","data":[{"examId":"1420702","name":"南平市2020-2021学年第二学期高一质量检测","type":2,"score":393.5,"time":1625414400000,"manfen":750,"classRank":-2,"level":11.78,"stage":"E","className":"12","teacherComment":2,"classRankType":5},{"examId":"1433279","name":"建瓯一中高一三科","type":2,"score":113,"time":1625414400000,"manfen":200,"classRank":-2,"level":55.93,"stage":"C","className":"12","teacherComment":2,"classRankType":5},{"examId":"1425560","name":"高一","type":5,"score":24,"time":1624896000000,"manfen":250,"classRank":-2,"level":100,"stage":"A","className":"12","teacherComment":2,"classRankType":5},{"examId":"1365292","name":"2020-2021(下)建瓯一中高一期中考试","type":1,"score":565.5,"time":1621353600000,"manfen":1050,"classRank":-2,"level":30.38,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1296366","name":"建瓯一中2020-2021下学年级第一次月考(高一)","type":3,"score":611.5,"time":1617638400000,"manfen":1050,"classRank":-2,"level":40.02,"stage":"C","className":"12","teacherComment":2,"classRankType":5},{"examId":"1187511","name":"南平市2020—2021学年第一学期高一质量检测","type":2,"score":637.5,"time":1611590400000,"manfen":1050,"classRank":-2,"level":39.8,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1157390","name":"2020-21学年第一学期金太阳卷高一联考","type":3,"score":657,"time":1608134400000,"manfen":1050,"classRank":-2,"level":39.42,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1141624","name":"建瓯一中2020-2021上学年高一期中考试","type":1,"score":554,"time":1605628800000,"manfen":1050,"classRank":-2,"level":11.23,"stage":"E","className":"12","teacherComment":2,"classRankType":5},{"examId":"1096981","name":"建瓯一中2020-2021学年上学期高一月考","type":3,"score":627.5,"time":1602691200000,"manfen":1050,"classRank":-2,"level":42.24,"stage":"C","className":"12","teacherComment":2,"classRankType":5}]}

  • 写回答

5条回答 默认 最新

  • 一眼青苔 2021-07-26 13:57
    关注

    php json解析:

    json对象想要解析出来,需要用到 json_decode($html, true) 这样的写法,返回将会是一个数组。

    关于数组中提取部分字段和值问题:

    从一个数组中想要提出所有的name字段值,需要用到php方法 array_column()

    结果截图:

    img

    源码:

    <?php
    
    $str = '{"code":0,"msg":"获取一名学生成绩趋势摘要信息成功","data":[{"examId":"1420702","name":"南平市2020-2021学年第二学期高一质量检测","type":2,"score":393.5,"time":1625414400000,"manfen":750,"classRank":-2,"level":11.78,"stage":"E","className":"12","teacherComment":2,"classRankType":5},{"examId":"1433279","name":"建瓯一中高一三科","type":2,"score":113,"time":1625414400000,"manfen":200,"classRank":-2,"level":55.93,"stage":"C","className":"12","teacherComment":2,"classRankType":5},{"examId":"1425560","name":"高一","type":5,"score":24,"time":1624896000000,"manfen":250,"classRank":-2,"level":100,"stage":"A","className":"12","teacherComment":2,"classRankType":5},{"examId":"1365292","name":"2020-2021(下)建瓯一中高一期中考试","type":1,"score":565.5,"time":1621353600000,"manfen":1050,"classRank":-2,"level":30.38,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1296366","name":"建瓯一中2020-2021下学年级第一次月考(高一)","type":3,"score":611.5,"time":1617638400000,"manfen":1050,"classRank":-2,"level":40.02,"stage":"C","className":"12","teacherComment":2,"classRankType":5},{"examId":"1187511","name":"南平市2020—2021学年第一学期高一质量检测","type":2,"score":637.5,"time":1611590400000,"manfen":1050,"classRank":-2,"level":39.8,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1157390","name":"2020-21学年第一学期金太阳卷高一联考","type":3,"score":657,"time":1608134400000,"manfen":1050,"classRank":-2,"level":39.42,"stage":"D","className":"12","teacherComment":2,"classRankType":5},{"examId":"1141624","name":"建瓯一中2020-2021上学年高一期中考试","type":1,"score":554,"time":1605628800000,"manfen":1050,"classRank":-2,"level":11.23,"stage":"E","className":"12","teacherComment":2,"classRankType":5},{"examId":"1096981","name":"建瓯一中2020-2021学年上学期高一月考","type":3,"score":627.5,"time":1602691200000,"manfen":1050,"classRank":-2,"level":42.24,"stage":"C","className":"12","teacherComment":2,"classRankType":5}]}';
    
    $array = json_decode($str, true);
    
    $data = $array['data'];
    
    // 方法一
    foreach ($data as $k => $v) {
        echo $v['name'] . PHP_EOL;
        echo '满分' . $v['manfen'] . PHP_EOL;
        echo '得分' . $v['score'] . PHP_EOL;
    }
    
    //方法二
    $name = array_column($data,'name');         //将会提出所有的nama值
    $manfen = array_column($data,'manfen');     //将会提出所有满分的值
    $score = array_column($data,'score');       //将会提出所有的得分值
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 8月12日
  • 已采纳回答 8月4日
  • 创建了问题 7月21日

悬赏问题

  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行