0

我从我的 JSON 中获取价值,如下所示:

$adarray = json_decode($addata);
if($adarray->{'zone'} == 'homepage'){
    $chan = 'homepage';
}else if($adarray->{'subcat'} == 'main'){
    $chan = $adarray->{'cat'};
}else{
    $chan = $adarray->{'subcat'};
}
echo $chan;

它的 else if 和 else 它完美地工作但是,我在第一部分遇到了麻烦:

当这个 JSON 数据被解析到 if 语句中时,它应该返回“主页”,但它只是返回 JSON 数据,为什么?

{"zone":"homepage"}
4

2 回答 2

1

在 php tester 上尝试了相同的代码,并得到了正确的输出。看看你的代码是否正确。

在http://phptester.net/上自己尝试一下:

<?php
$adarray = json_decode('{"zone":"homepage"}');
if($adarray->{'zone'} == 'homepage'){
    $chan = 'homepage';
}else if($adarray->{'subcat'} == 'main'){
    $chan = $adarray->{'cat'};
}else{
    $chan = $adarray->{'subcat'};
}
echo $chan;
于 2012-06-15T17:26:55.390 回答
0

请以这种方式更改您的代码

$adarray = json_decode($addata,true);

所以现在它被转换为数组。您可以轻松管理数组或从数组中获取值或数据

于 2012-06-15T17:26:22.420 回答