我正在尝试检查数组中的特定键是否存在,如果存在则打印其值。我尝试执行下面的代码,但它没有打印出任何东西
$json = json_decode($result, true);
if (array_key_exists('genre', $json)){
print ("Genre: ".$json[0]['genre']."<br/>");
}
foreach($json[0]['types'] as $key2 => $values2) {
if (array_key_exists('types', $values2)){
print ("Types: Album type: ".$values2."<br/>");
}
}
刚进入php所以我不太确定我的代码是什么问题。非常感谢我能得到的所有帮助。干杯
答案 0 :(得分:0)
由于您尝试通过访问数组的第一个元素($ json [0])来打印结果,因此您显然正在测试错误的数组。 array_key_exists()不会递归地检查嵌套数组,因此您必须使用嵌套数组。尝试检查
array_key_exists('genre', $json[0])
或类似
foreach($json as $jsonArray) {
if(array_key_exists('genre', $jsonArray)) {
....
}
}