我有这段代码:
print ($myarray['response']['players'][0]['VACBanned'] ? 'BANNED' : 'NOT BANNED');
其中“VACBanned”是布尔值。但是,如果它是“真实的”或“假的”并不重要;它总是给出“没有禁止”。
var_dump结果:案例1:'VACBanned'=> bool(true)案例2:'VACBanned'=> bool(false)两个案例都显示“没有禁止”
PIC: http://i.stack.imgur.com/Rk7uv.png http://i.stack.imgur.com/o0i9f.png
答案 0 :(得分:0)
您需要turn error checking开启或检查您的apache错误日志,并找到代码中的错误。
例如,您的var_dump($myarray);
会显示一个没有“响应”键的数组。但是,您的print语句是:
print ($myarray['response']['players'][0]['VACBanned'] ? 'BANNED' : 'NOT BANNED');
数组表达式永远找不到任何东西,因为没有"响应"的关键字。因此,它将(a)抛出错误"未定义的索引:响应",以及(b)总是评估为false
,因此总是说&#34; NOT BANNED&#34;。< / p>
答案 1 :(得分:-1)
print (($myarray['response']['players'][0]['VACBanned'] != 0) ? 'BANNED' : 'NOT BANNED');