JSON解码-对象

时间:2019-05-13 09:47:00

标签: php json decode

以下是我解码时使用的JSON:

  $reqarr = json_decode($message, true);

这是解码的JSON:

{
"update_id" :720650368,
"message"   :
        {
         "message_id"   :14,
         "from"         :{  
                    "id":876963516,
                    "is_bot":false,
                    "first_name":"MIS",
                    "last_name":"SKH",
                    "username":"SKHMIS",
                    "language_code":"en"},
        "chat"          :{
                    "id":876963516,
                    "first_name":"MIS",
                    "last_name":"SKH",
                    "username":"SKHMIS",
                    "type":"private"},
        "date"      :1557738572,
        "text"      :"/attendance",
        "entities"  :[{"offset":0,"length":11,"type":"bot_command"}]
        }
}

有一个名为entities的键,其对象类型为 array ,与其他键相比,该键是不同的。

我无法获得此值:

    $typ = $reqarr['message']['entities']['type']

我也尝试了 for-each循环,但是没有用。

如何获取typeentities的值?

2 个答案:

答案 0 :(得分:2)

您需要这样做:

$typ = $reqarr['message']['entities'][0]['type'];

输出:-{https://3v4l.org/KQc2s

答案 1 :(得分:0)

尝试一下:

if(!isset($reqarr['message']['entities'][0])){
    $reqarr['message']['entities']=array($reqarr['message']['entities']);
}

foreach($reqarr['message']['entities'] as $entity){
   var_dump($entities);
   die();
}