首页 > 解决方案 > KODI 播放器复杂 json 数组我需要由 PHP 5.2 处理的值

问题描述

嗨,我对 Kodi Player 的 json 响应有问题我需要提取两个值,例如 channelid 和 label 我需要在 PHP 5.2 中完成

{"id":"libGetChannels","jsonrpc":"2.0","result":{"channels":[{"channel":"BBC
 One HD","channelid":3,"label":"BBC One HD","lastplayed":"2018-08-16"}, 
{"channel":"BBC Two HD","channelid":4,"label":"BBC Two 
HD","lastplayed":"2018-08-16"}],"limits":{"end":2,"start":0,"total":2}}}

感谢您帮助我,我是 Json 的新手

标签: phpjson

解决方案


    $json = '{"id":"libGetChannels","jsonrpc":"2.0","result":{"channels":[{"channel":"BBC One HD","channelid":3,"label":"BBC One HD","lastplayed":"2018-08-16"},{"channel":"BBC Two HD","channelid":4,"label":"BBC Two HD","lastplayed":"2018-08-16"}],"limits":{"end":2,"start":0,"total":2}}}';

    $array = json_decode($json);
    $channelsArray = [];

    foreach ($array as $value){
        if(is_object($value)){
           foreach ($value->channels as $channel){
               $channelsArray[] = $channel;
           }
        }
    }

    foreach($channelsArray as $channel){
        echo $channel->channelid;
        echo $channel->label;
    }

推荐阅读