检查收到的JSON是否包含PHP中的特定值

时间:2013-12-17 10:36:40

标签: php json

我遇到以下情况: 我正在获取有关JSON游戏的信息。 该游戏中有多个玩家,有多个项目。

播放器代码如下所示:

$playerOne   = $json->games[$i]->fellowPlayers[0];
$playerTwo   = $json->games[$i]->fellowPlayers[1];
$playerThree = $json->games[$i]->fellowPlayers[2];
$playerFour  = $json->games[$i]->fellowPlayers[3];
$playerFive  = $json->games[$i]->fellowPlayers[4];
$playerSeven = $json->games[$i]->fellowPlayers[6];
$playerEight = $json->games[$i]->fellowPlayers[7];
$playerNine  = $json->games[$i]->fellowPlayers[8];

$ i是来自for循环的var。我没有添加其余的代码,因为它不需要。

所以这就是我想要解决的问题。并非所有玩家和物品插槽都被填满。所以我需要一种方法来检查它们是否在JSON中。

我试过了:

if(!is_null($json->games[$i]->fellowPlayers[5])){
    $playerSix = $json->games[$i]->fellowPlayers[5];
}

但那没用。 Ty提前

2 个答案:

答案 0 :(得分:0)

if (isset($json->games[$i]->fellowPlayers[5]))
{
    $playerSix = $json->games[$i]->fellowPlayers[5];
}

检查具有此类索引的数组成员是否存在,然后将其分配给变量。您还可以进行任何其他检查。

答案 1 :(得分:0)

if(!empty($json->games[$i]->fellowPlayers[0])){

    $playerOne = $json->games[$i]->fellowPlayers[0];

}

有效。

回答:sHentschel