dongxi5423
dongxi5423
2016-12-12 20:10
浏览 17

如何在PHP中检测JSON对象是String还是数组? [重复]

This question already has an answer here:

When I have an input like below...

{  
     "number":[  
        "+39XXXXXXXX",
        "+34XXXXXXXX",
        "+49XXXXXXXX"
     ],
     "message":"Sample msg..."
}

I handle it with a foreach loop—like so:

foreach ($message->number as $key => $number) {
    ...                                     
}

However when I have an input like this:

{  
     "number": "+49XXXXXXXX",
     "message": "Sample msg..."
}

I receive an error, cause there is no array to be looped inside the object.

So what is a good and efficient way to detect for this?

</div>
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dt888999
    dt888999 2016-12-12 20:14
    已采纳

    You can check if the var value is array using the is_array function:

    if (is_array($message->number) {
        foreach ($message->number as $key => $number) {
            ...                                     
        }
    } else {
        ...
    }
    
    点赞 评论

相关推荐